仅从zip存档中提取文件夹名称

时间:2013-08-12 10:05:07

标签: php zip

我创建了一个PHP脚本,用于上传文件并将其解压缩并在zip中获取文件夹名称,并将其名称和路径插入到db中。但是,它不会从zip存档中提取文件夹名称,也不会像我想要的那样获取路径名。它提取我只想要目录名的所有目录和文件名。假设我有一个名为abc.zip的zip文件,它包含这样的文件夹 a ->b->c ab ->bc  我想要的是只能获得像a和b这样的parnet目录名,目前它获取所有目录名和文件名。

$zip = new ZipArchive;
$zip->open($filen);
$zip->extractTo($path);
$zip->close();

$zip = new ZipArchive;
if ($zip->open($filen) === true) {
    for($i = 0; $i < $zip->numFiles; $i++) {
        $filename = $zip->getNameIndex($i);
        $fileinfo = pathinfo($filename);
        $db->con->query("Insert into files (rand) values ('$filename')");
    }                  
    $zip->close();                  
}

1 个答案:

答案 0 :(得分:1)

你可以这样做:

$fileinfo = pathinfo($filename,PATHINFO_DIRNAME);
$db->con->query("Insert into files (rand) values ('$fileinfo')");