为什么 lint 不告诉我解析错误的行号和性质?
我从Windows批处理文件中调用php lint,如下所示:
@echo off
for %%f in (*.php) do php -l %%f
当文件包含语法错误时,它仅输出 。有没有办法让它告诉我错误的性质是什么,以及它在哪条线上?也许是另一个开关?Errors parsing xxx.php
我从Windows批处理文件中调用php lint,如下所示:
@echo off
for %%f in (*.php) do php -l %%f
当文件包含语法错误时,它仅输出 。有没有办法让它告诉我错误的性质是什么,以及它在哪条线上?也许是另一个开关?Errors parsing xxx.php
如果您收到没有任何详细信息的“解析 foo.php 错误”消息,则此参数会在您运行 PHP lint 时显示错误:
php -d display_errors=1 -l foo.php
例:
[somewhere]# php -l submit.php Errors parsing submit.php [somewhere]# php -d display_errors=1 -l submit.php Parse error: syntax error, unexpected T_VARIABLE in submit.php on line 226 Errors parsing submit.php
我已经接受了查尔斯的回答,但我想我应该补充一些细节,因为我必须做一些额外的狩猎来找出该怎么做。
问题是我没有看到输出,所以我首先在相关命令的末尾添加。这仍然没有帮助,所以我意识到问题在于PHP根本没有输出stderr的东西。我去了PHP安装目录并查看了php.ini发现默认情况下,是.将其更改为,它现在工作。stderr
2>&1
display_errors
Off
On