猿问

php怎么判断txt内容为空

$content=file_get_contents($txt);
echo $content."<br>";
if(empty($content)){
    echo '0<br>';
}else{
    echo "1<br>";
}

为什么无论是否有内容都输出1?

弑天下
浏览 1032回答 2
2回答

慕仙森

请检查文件是否存在空格回车或者制表符

潇潇雨雨

检测一个文件是没有内容,使用filesize()函数就可以了。 <?php if(filesize($txt) === 0){ echo '这是一个空文件'; } ?> 如果非要像你那样写,你的判断逻辑是错的,也不严谨,正确的做法是判断读取出来的字符串的字节数,或者和空字符串''比较,而不能用empty()来检测,因为,举个例子,如果文件内容是一个数字0,empty()也会返回true. <?php $content = @file_get_contents($txt); if($content === false){ echo '无法读取文件内容'; }else{ if(strlen($content) === 0){ echo '文件没有内容'; }else{ echo '不是空文件'; } } ?>
随时随地看视频慕课网APP
我要回答