Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中读取zip文件并获取包含的文件或文件夹的信息而无需解压缩?_Php_Zip - Fatal编程技术网

如何在PHP中读取zip文件并获取包含的文件或文件夹的信息而无需解压缩?

如何在PHP中读取zip文件并获取包含的文件或文件夹的信息而无需解压缩?,php,zip,Php,Zip,我实际上想做的是读取zip文件,然后若它确实包含文件夹,那个么用一些消息拒绝它 我想用户应该上传没有任何目录结构的文件只有zip文件。 所以我想读取zip文件包含的内容并检查文件结构。 我正在尝试以下代码片段 $zip = zip_open('/path/to/zipfile'); while($zip_entry = zip_read($zip)){ $filename = zip_entry_name($zip_entry); //@todo check whe

我实际上想做的是读取zip文件,然后若它确实包含文件夹,那个么用一些消息拒绝它

我想用户应该上传没有任何目录结构的文件只有zip文件。 所以我想读取zip文件包含的内容并检查文件结构。 我正在尝试以下代码片段

$zip = zip_open('/path/to/zipfile'); 
while($zip_entry = zip_read($zip)){
       $filename = zip_entry_name($zip_entry);
       //@todo check whether file or folder.  
}

您不能分析$filename的路径吗?类似于
$dirName=pathinfo($filename,pathinfo\u dirName)

我已经整理好了。
我现在将文件名作为字符串进行检查,只要我得到以“/”结尾的字符串,它就被视为目录或文件。

不,你不能。如果提取文件,则可以执行此操作。pathinfo希望$filename是磁盘上实际存在的文件。是的,我们无法使用诸如is_dir或is_file或pathinfo之类的php函数检查这些文件或文件夹。因为这些文件没有物理路径。