就在最近,PHP中的var_dump()(目前使用的是5.6.23)在实际转储变量之前就开始打印出文件名和行号.我不知道服务器上有任何重大变化,所以我想知道为什么会这样,也就是在网上或PHP文档中找不到任何东西(var_dump())
使用命令行时也会发生奇怪的行为:
> php -r 'var_dump("lol");'
Command line code:1:
string(3) "lol"
Run Code Online (Sandbox Code Playgroud)
虽然我习惯于"字符串(3)"lol""被打印.
这不是一个showstopper,但打破了我的几个单元测试,我需要比较一些使用var_dump()打印的API的输出.我首先想到它可能与xdebug有关,但找不到任何似乎与此问题相关的指令.
任何提示导致这一点的提示都表示赞赏.
您已启用xdebug.
其中一个新功能涉及我在原始Xdebug中添加的第一件事:使var_dump()输出"漂亮".只要xdebug.overload_var_dump设置未设置为0,Xdebug就会将PHP的标准var_dump()函数替换为自己的版本
Xdebug 2.3通过包含调用var_dump()的文件名和行号来增强var_dump()的重载.这是一项长期存在的功能要求.
这是我没有xdebug的输出;
>php -r "var_dump('lol')";
string(3) "lol"
Run Code Online (Sandbox Code Playgroud)
https://derickrethans.nl/xdebug-2.3-overload-vardump.html
| 归档时间: |
|
| 查看次数: |
1767 次 |
| 最近记录: |