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']))
在复制函数之前。
感谢我:-)
我有一个包含许多文件和文件夹的 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']))
在复制函数之前。
感谢我:-)