我是想读取压缩包里面的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 文件
}
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 文件
}
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/>";