PHP - 将 rar 存档的所有文件提取到主文件夹

PHP - Extracting all files of rar archive to main folder

我有一个包含许多文件和文件夹的 rar 文件。我想将rar文件的子文件夹中的文件解压到主文件夹中

我试过这个:

$archive = RarArchive::open('example.rar');

$entries = $archive->getEntries();

foreach ($entries as $entry)
    $entry->extract($dir);

$archive->close();

但是,这会将文件提取到同一文件夹,而不是主文件夹。

有什么建议吗?

我尝试了自己的解决方案,效果很好:

$archive = RarArchive::open('example.rar');

$entries = $archive->getEntries();

foreach ($entries as $entry)
{
        $fileinfo = pathinfo($entry->getName());
        copy("rar://".$file."#".$entry->getName(), $dir.'/'.$fileinfo['basename']);
}

$archive->close();

对于不解压的文件夹(空文件夹),我们可以把

if(!empty($fileinfo['extension']))

复制函数之前。

感谢我:-)