@jedidiah.brown
В PHP нет встроенных функций для создания архивов, но вы можете использовать внешние библиотеки, такие как "ZipArchive". Эта библиотека позволяет создавать, редактировать и распаковывать ZIP-архивы.
Следующий код демонстрирует, как использовать "ZipArchive" для создания архива:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php $zip = new ZipArchive(); $filename = "./test112.zip"; if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) { exit("Невозможно открыть <$filename> "); } $zip->addFile("test112/testfile112.txt","testfile112.txt"); $zip->close(); echo "Архив успешно создан."; ?> |
В этом примере мы создаем экземпляр класса ZipArchive, затем открываем файл с именем "test112.zip" для записи. Затем мы добавляем файл "test112/testfile112.txt" в архив и закрываем его. Наконец, мы выводим сообщение "Архив успешно создан".
@jedidiah.brown
Однако, помимо создания ZIP-архивов, с использованием PHP также можно создавать архивы в других форматах, например, tar или gz. Вот примеры создания архивов в этих форматах:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php
$files = array('file1.txt', 'file2.txt', 'file3.txt');
$archiveName = 'archive.tar';
$archive = new PharData($archiveName);
foreach ($files as $file) {
$archive->addFile($file);
}
$archive->compress(Phar::TAR);
echo "Архив успешно создан.";
?>
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php
$files = array('file1.txt', 'file2.txt', 'file3.txt');
$archiveName = 'archive.tar.gz';
$archive = new PharData($archiveName);
foreach ($files as $file) {
$archive->addFile($file);
}
$archive->compress(Phar::GZ);
echo "Архив успешно создан.";
?>
|
В обоих примерах мы используем класс PharData, который позволяет создавать и работать с архивами различных форматов. Мы добавляем файлы в архив с помощью метода addFile, и затем сжимаем архив с помощью метода compress.
Пожалуйста, обратите внимание, что для использования класса PharData вам может потребоваться изменить конфигурацию PHP, чтобы разрешить операции над файлами вне директории open_basedir.