У меня есть 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']))
до копия функция.
Спасибо мне 🙂
Других решений пока нет …