Примеры
Пример #1 Пример работы с расширением Rar
<?php
$rar_file = rar_open('example.rar') or die("Невозможно открыть архив");
$entries = rar_list($rar_file);
foreach ($entries as $entry) {
echo 'Файл: ' . $entry->getName() . "\n";
echo 'Размер сжатого элемента: ' . $entry->getPackedSize() . "\n";
echo 'Размер в распакованном состоянии: ' . $entry->getUnpackedSize() . "\n";
$entry->extract('/dir/extract/to/');
}
rar_close($rar_file);
?>
В этом примере открывается архивный файл Rar и каждый заархивированный элемент извлекается в указанную директорию.
Коментарии
A veeery simple function to RAR files, I'm not proud of it.
Since there's no way to create RAR files in PHP (due to licensing, patents or whatever), I'm taking some advantage from the command-line RARing tool that comes with WinRAR (in the WinRAR program files named "rar.exe").
<?php
function RARFiles($Output='output.rar',$Files=array()) {
$Data='';
for($i=0;$i<count($Files);$i++)
$Data.="\"{$Files[$i]}\" ";
exec("rar.exe a \"{$Output}\" {$Data}");
}
$Files=array('file1.ext','file2.ext','file3.ext');
RARFiles('asdf.rar',$Files);
// asdf.rar created.
?>
There's no error checking, so make sure you check that your expected RAR file exists before doing anything with it.
Hopefully one day, PHP will be able to be allowed to create RAR files.