为什么我的var_dump($file_suffix=="php")总是false?明明值一样的啊.
我是想读取压缩包里面的php文件内容,结果遇到这个怪问题给困惑啊
var_dump($file_suffix=="php");明明值一样,怎么是false啊...
- PHP code
//获取后缀函数 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) . "
"; //返回 ZIP 文件中的一个项目的名称 echo "Actual Filesize: " . zip_entry_filesize($zip_entry) . "
"; //返回 ZIP 文件中的一个项目的实际文件尺寸 echo "Compressed Size: " . zip_entry_compressedsize($zip_entry) . "
"; //返回 ZIP 文件中的一个项目的被压缩尺寸 echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "
"; //返回 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:" . "
"; $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); //读取 ZIP 文件中的一个打开的项目 echo "$buf"; zip_entry_close($zip_entry); //关闭 ZIP 文件中的一个项目 } echo "
"; } zip_close($zip); //关闭 ZIP 文件 }
------解决方案--------------------
能一样吗?
echo "Name: " . $file_name=zip_entry_name($zip_entry) . "
"; //返回 ZIP 文件中的一个项目的名称
中 $file_name=zip_entry_name($zip_entry) . "
" 这不是后面还有
吗?
在 echo 中赋值的话,应写作
echo "Name: " .( $file_name=zip_entry_name($zip_entry) ). "
";
或
echo "Name: " , $file_name=zip_entry_name($zip_entry) , "
";