PHP中的通知。怎么没给他们看?

时间:2013-07-08 09:56:04

标签: php exception error-handling notifications error-reporting

我有删除文件的功能。这是我的代码:

echo error_reporting();     // got 32767 = E_ALL, yes?
ini_set('display_errors',0);
if(unlink($file) == false){
    echo "Error";
}

我收到以下错误:

  

string(274)“PROBLEM unlink(/path/to/file.mp4):权限被拒绝   第1226行的/path/to/script.php

如何将错误记录在日志文件中,而不是在屏幕上?

5 个答案:

答案 0 :(得分:1)

您可以在function set_error_handler()

中使用自己的错误处理程序

您可以在传递给set_error_handler()

的函数中编写日志记录

此函数还有一个名为 error_types 的参数,您可以在其中提供要处理的错误类型。如果你显示它们,它取决于你。

我不会写其他选项,因为他们已经提到了其他选项。

答案 1 :(得分:0)

您可以使用error_log()并禁止前端中的错误,您可以使用error_reporting(0)

答案 2 :(得分:0)

它不起作用的原因是因为在PHP 5.2.4及更高版本中,变量已从布尔值更改为字符串。将display_errors设置为'stderr'。

答案 3 :(得分:0)

→试试这个:

这将在运行时运行:

     ini_set( 'display_errors', '0' );

这将阻止显示错误,但仍会记录它们。这将停止两者:

     error_reporting(0); // Will stop both error displaying and reporting to screen

答案 4 :(得分:0)

其他脚本上的var_dump()会捕获错误并在屏幕上显示。