我一直试图读取ZIP归档文件中的PHP文件。我已经编写了以下代码,该代码可以读取文本文档并回显而没有错误,但是当我使用PHP文件对其进行测试时,什么也没有出现。那我该怎么做却不解压缩来读取PHP文件?
<?php
$zip = zip_open("test.zip");
$filename= "test.php";
if (is_resource($zip))
{
while ($zip_entry = zip_read($zip))
{
if (zip_entry_open($zip, $zip_entry) && zip_entry_name($zip_entry) == $filename)
{
echo "Name: " . zip_entry_name($zip_entry) . "<br />";
echo "<p>";
echo "File Contents:<br/>";
$contents = zip_entry_read($zip_entry);
echo "$contents<br />";
zip_entry_close($zip_entry);
}
}
zip_close($zip);
}
谢谢!
答案 0 :(得分:0)
使用默认的zip_read()php函数的资源并不多,但是这个https://github.com/Ne-Lexa/php-zip库使在php中使用zip文件变得轻而易举,您应该检查一下。
答案 1 :(得分:0)
您可以使用stream wrappers直接从zip内一行读取文件,而无需将任何内容提取到磁盘。例如:
$str = file_get_contents('zip://test.zip#test.php');