更好的PHP错误消息

时间:2013-03-13 14:19:06

标签: php

有没有办法在php中丰富错误信息?我收到了像

这样的错误
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 524288 bytes) in /site/lib/Zend/Db/Statement/Pdo.php on line 228

这不太好。至少callstack会更有帮助。

3 个答案:

答案 0 :(得分:0)

PHP错误对我来说非常清楚,但如果你想要非常详细的信息,为什么不编写异常类并拥有自定义消息,包括异常消息和你自己的详细信息。

答案 1 :(得分:0)

如果您需要更详细的信息,那么有一种方法可以拦截函数中的错误消息。在那里你可以抛出ErrorException为例。这会给你更多细节。

尝试以下内容(尽管catchException是光学的)

function exception_error_handler($errno, $errstr, $errfile, $errline )
{
    if (error_reporting() === 0)
    {
        return;
    }

    throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
}

set_error_handler("exception_error_handler");

function catchException($e)
{
    // Do some stuff
}

set_exception_handler('catchException');

答案 2 :(得分:0)

尝试安装xdebug,看看various settings ...