如何在 Zend 框架中检查完整的错误日志? [英] how to check full error log in Zend framework?
问题描述
我是 ZF 的新手,这是我的第一次测试.我得到了
<前>发生错误
发生错误
我的 error.phtml 是
<前><h1>发生错误</h1><h2><?php echo $this->message ?></h2><?php if (isset($this->exception)): ?><h3>异常信息:</h3><p><b>消息:</b><?php echo $this->exception->getMessage() ?></p><h3>堆栈跟踪:</h3><pre><?php echo $this->exception->getTraceAsString() ?><h3>请求参数:</h3><pre><?php echo $this->escape(var_export($this->request->getParams(), true)) ?>
<?php endif ?>
这就是我的 IndexAction 中的内容
<前>$this->view->title="我的地点";$this->view->headTitle($this->view->title);$Places=new Places();echo "<pre>";var_dump($Places->fetchAll(null,'date_created DESC', 4));echo "</pre>";和我的模块文件 ID
<前>类 Places 扩展 Zend_Db_Table{受保护的 $_name='地方';公共函数 fetchLatest($count=10){返回 $this->fetchAll(null,'date_created DESC', $count);}} ** 编辑 **
错误控制器是
我怎么知道是什么导致了这个错误?(如何查看完整的错误日志?)
谢谢
在你的 /application/configs/application.ini
设置
resources.frontController.params.displayExceptions = 1
对于你所处的环境,如果你不知道你在哪个环境,暂时放在[production]
下.
I am newbie in ZF and this is my first test. i am getting
An error occurred
An error occurred
my error.phtml is
<h1>An error occurred</h1> <h2><?php echo $this->message ?></h2> <?php if (isset($this->exception)): ?> <h3>Exception information:</h3> <p> <b>Message:</b> <?php echo $this->exception->getMessage() ?> </p> <h3>Stack trace:</h3> <pre><?php echo $this->exception->getTraceAsString() ?> </pre> <h3>Request Parameters:</h3> <pre><?php echo $this->escape(var_export($this->request->getParams(), true)) ?> </pre> <?php endif ?>
and this is what i have in my IndexAction
$this->view->title="My Places"; $this->view->headTitle($this->view->title); $Places=new Places(); echo "<pre>";var_dump($Places->fetchAll(null,'date_created DESC', 4)); echo "</pre>";
and my module file id
class Places extends Zend_Db_Table { protected $_name='places'; public function fetchLatest($count=10) { return $this->fetchAll(null,'date_created DESC', $count); } }
** EDIT **
ErrorController is
<?php class ErrorController extends Zend_Controller_Action { public function errorAction() { $errors = $this->_getParam('error_handler'); if (!$errors || !$errors instanceof ArrayObject) { $this->view->message = 'You have reached the error page'; return; } switch ($errors->type) { case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE: case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER: case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION: // 404 error -- controller or action not found $this->getResponse()->setHttpResponseCode(404); $priority = Zend_Log::NOTICE; $this->view->message = 'Page not found'; break; default: // application error $this->getResponse()->setHttpResponseCode(500); $priority = Zend_Log::CRIT; $this->view->message = 'Application error'; break; } // Log exception, if logger available if ($log = $this->getLog()) { $log->log($this->view->message, $priority, $errors->exception); $log->log('Request Parameters', $priority, $errors->request->getParams()); } // conditionally display exceptions if ($this->getInvokeArg('displayExceptions') == true) { $this->view->exception = $errors->exception; } $this->view->request = $errors->request; } public function getLog() { $bootstrap = $this->getInvokeArg('bootstrap'); if (!$bootstrap->hasResource('Log')) { return false; } $log = $bootstrap->getResource('Log'); return $log; } }
How can i know what caused this error? (how can i see full error log?)
Thanks
In your /application/configs/application.ini
set
resources.frontController.params.displayExceptions = 1
For the environment you are in. If you don't know which one you are in, put it temporarily under [production]
.
这篇关于如何在 Zend 框架中检查完整的错误日志?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!