PHP命令行运行不显示错误

时间:2014-06-11 09:57:42

标签: php

如果我在Centos上运行这个程序作为" php file.php"它显示没有输出,但php -l显示它有错误(;在EOT丢失后)。在这种情况下如何启用错误报告?

<?php

ini_set('display_startup_errors',1);
ini_set('display_errors',1);
error_reporting(-1);
$str = $_POST['name'];

file_put_contents("out.txt",$str);

print  <<<EOT
<html><body><h1>You've entered $str</h1></body></html>
EOT

![在此处输入图片说明] [1]

我已经完成了:How to get useful error messages in PHP?

3 个答案:

答案 0 :(得分:18)

要覆盖php.ini中的display_errors=Off,请在命令行中添加-d标志:

php -d display_errors=on  script.php

或者只需编辑ini并打开标记。

答案 1 :(得分:3)

尝试将error_reporting设置为E_ALL而不是-1,这对我来说很有用。

来源:http://www.php.net/manual/en/function.error-reporting.php#85096

答案 2 :(得分:0)

执行:

php -i | grep "Loaded Configuration File"

并在此文件中设置display_startup_errors和display_errors。