有没有办法检测PHP中的gz文件是否已损坏?
我目前正在使用http://www.php.net/manual/de/function.gzread.php#110078来确定文件大小并通过
读取整个*文件$zd = gzopen ( $file, "r" );
$contents = gzread ( $zd, $fzip_size );
gzclose ( $zd );
不幸的是,有些gz文件已损坏,最后4个字节不代表gz文件的实际长度。只要数字是否定的,我就能告诉某些事情是错的,但有时它是正面的(而且非常大)会导致内存不足的错误。如果文件已损坏,我该如何提前检查?
答案 0 :(得分:0)
如果你可以使用linux gzip命令,那么查找文件是否错误将非常简单。如果文件有效, gzip -t 将不会显示任何消息。
if (`gzip -t $file 2>&1`) {
echo "An error occured";
}