在开发中的PHP应用程序返回的堆栈跟踪中,当在错误页面上显示时,函数的长字符串参数将被截断:
Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO "tb...', Array)
如何展开查询参数以使全文可见?服务器正在运行PHP 5.3.3。
答案 0 :(得分:5)
请改用debug_backtrace。据我所知,它会给你整个跟踪并且不会修改参数。
再想一想:你可以使用
来逃避它try {
...
} catch (Exception $e)
var_dump($e->getTrace());
}
代替。
答案 1 :(得分:0)
Starting with PHP 8.0 实际上可以提高参数被截断的限制。
您可以更改新引入的 php.ini 设置 zend.exception_string_param_max_len
并将其设置为 0 到 1000000 之间的任何值,默认值为 15。
这只会影响使用 getTraceAsString()
或通过将异常转换为字符串(例如,通过打印)生成的堆栈跟踪。
更多信息可用 here 或 in the corresponding RFC。