为什么getTraceAsString()被截断

时间:2018-08-30 13:12:52

标签: php exception

如果我使用以下命令在PHP中打印出异常

$e->getTraceAsString();

我可以看到stacktrace被省略号截断了。我知道如何获取完整的堆栈跟踪信息,但我只是好奇是否有任何特定的原因让它具有这样的功能(缩小日志或类似的东西)?

1 个答案:

答案 0 :(得分:0)

您是否曾经注意到当执行var_dump()时,它总是会深入树中并显示三个点吗??

您是否曾经想看到这三个点之外的东西?答案是您的xdebug PHP ini设置!

; with sane limits
xdebug.var_display_max_depth = 10
xdebug.var_display_max_children = 256
xdebug.var_display_max_data = 1024 


; with no limits
; (maximum nesting is 1023)
xdebug.var_display_max_depth = -1 
xdebug.var_display_max_children = -1
xdebug.var_display_max_data = -1 

您可以使用ini_set()在脚本上设置这些内容:

ini_set('xdebug.var_display_max_depth', 10);
ini_set('xdebug.var_display_max_children', 256);
ini_set('xdebug.var_display_max_data', 1024);

好多了!