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


Extract folder name only from zip archive

我创建了一个PHP脚本,可以上传文件并提取它,在zip中获取文件夹名称,并将其名称和路径插入数据库。然而,它并没有从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();                  
}

你可以做:

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