php - 读取位于 zip 存档中的 php 文件
问题描述
我一直在尝试读取 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);
}
提前致谢!
解决方案
您可以使用流包装器在一行中直接从 zip 中读取文件,而无需将任何内容提取到磁盘。例如:
$str = file_get_contents('zip://test.zip#test.php');
推荐阅读
- java - 显示从 InputStream/InputReader 流式传输的数据,同时保留空格
- javascript - 如何将 json 对象从 PHP 转换为 Javascript 数组
- linux - 带有 TileGX 工具链和 LTO 的 LLVM 3.3 无法正常工作
- pandas - 用特定值替换最后一个有效索引
- python-3.x - 熊猫:如何广播乘以向量*矩阵*向量,按列
- c# - 如何为 AppInsight API 过滤器格式化带有特殊字符的文件名?
- python - 如何保留数据框中所有列中具有相同值的所有行?
- python - 绘制 Roc 曲线的自动编码器分类
- scala - 扩展 Spark 数据集
- python-3.x - 如何将此迭代应用于数据框以对其进行修改?