我用这样的脚本:PHP - is_readable()返回不正确的值
$path = dirname(__FILE__)."/folder/file.ext"
if(is_readable($path)){
$file = fread(fopen($path,"r"), filesize($path));
}else{
//do something else if file can't be opened
}
和令人惊讶地生成以下错误:
Warning: fread() [function.fread]: Length parameter must be greater than 0
in /nfs/c10/h02/mnt/161920/domains/example.com/html/my-folder/file.php on line 16
我不知道为什么会这样。它只发生在一些服务器上,而其他服务器上则没事。有什么要求成功使用fread
?文件存在于该位置。
查找file_get_contents()而不是在读取文件后不关闭文件的地方。 –
您的'filesize($ path)'值为0或小于零,通过打印来检查该值。 –