我是想读取压缩包里面的php文件内容,结果遇到这个怪问题给困惑啊
var_dump($file_suffix=="php");明明值一样,怎么是false啊...//获取后缀函数
function suffix($filename){
$string= strrpos($filename,'.');
$suffix = substr($filename,$string+1);
return $suffix;
}
$zip = zip_open("test.zip"); //打开 ZIP 文件
if ($zip) {
    while ($zip_entry = zip_read($zip)) {  //读取 ZIP 文件中的下一个项目
        echo "Name: " . $file_name=zip_entry_name($zip_entry) . "<br/>";   //返回 ZIP 文件中的一个项目的名称
        echo "Actual Filesize: " . zip_entry_filesize($zip_entry) . "<br/>";  //返回 ZIP 文件中的一个项目的实际文件尺寸
        echo "Compressed Size: " . zip_entry_compressedsize($zip_entry) . "<br/>";  //返回 ZIP 文件中的一个项目的被压缩尺寸
        echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "<br/>";  //返回 ZIP 文件中的一个项目的压缩方法
echo $file_suffix=suffix($file_name);
var_dump($file_suffix=="php");
if($file_suffix=='php'){
           zip_entry_open($zip, $zip_entry, "r"); //打开 ZIP 文件中的一个项目以供读取
         echo "File Contents:" . "<br/>";
         $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); //读取 ZIP 文件中的一个打开的项目
         echo "$buf";
         zip_entry_close($zip_entry);  //关闭 ZIP 文件中的一个项目
        }

        echo "<br/>";
    }
    zip_close($zip);  //关闭 ZIP 文件
}

解决方案 »

  1.   

    能一样吗?
    echo "Name: " . $file_name=zip_entry_name($zip_entry) . "<br/>";   //返回 ZIP 文件中的一个项目的名称
    中 $file_name=zip_entry_name($zip_entry) . "<br/>" 这不是后面还有 <br/> 吗?
    在 echo 中赋值的话,应写作
    echo "Name: " .( $file_name=zip_entry_name($zip_entry) ). "<br/>";

    echo "Name: " , $file_name=zip_entry_name($zip_entry) , "<br/>";