我正在使用fopen从文件中读取
$fh = fopen($path, 'r') or die('Could not open file');
现在我遇到错误无法打开文件。我检查了文件路径,甚至将文件的权限更改为777.有没有办法可以获得详细的错误报告,为什么文件无法打开,类似于mysql_error()?
答案 0 :(得分:29)
启用错误报告,或者在生产环境中(从PHP 5.2.0开始),您还应该能够使用error_get_last()
。
答案 1 :(得分:14)
对于5.2之前的php版本(缺少error_get_last()),您可以使用track_errors。
ini_set('track_errors', 1);
$fh = fopen('lalala', 'r');
if ( !$fh ) {
echo 'fopen failed. reason: ', $php_errormsg;
}
答案 2 :(得分:5)
是。
PHP为您提供了详细的错误消息
你只需要打开它。
要在屏幕上显示它,请在脚本顶部添加以下两行:
ini_set('display_errors',1);
error_reporting(E_ALL);
或者如果您想要记录它,
ini_set('log_errors',1);
ini_set('display_errors',0);
error_reporting(E_ALL);
另请注意,使用die()是非常糟糕的做法。
答案 3 :(得分:1)
$fh = fopen($path, 'r') or die (error_get_last());