Phar::addFile
(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 2.0.0)
Phar::addFile — Добавляет в phar-архив файл из файловой системы
Описание
$file
, string $localname
= ?
) : voidЗамечание:
Для корректной работы с объектами Phar этому методу необходима установка значения php.ini
phar.readonly
в0
. В противном случае, будет выброшено исключение PharException.
С помощью этого метода в phar-архив может быть добавлен любой
файл или содержимое, доступное по URL. Если указан необязательный
второй параметр localname
, то файл будет сохранен
в архиве с таким именем, в ином случае в качестве пути для сохранения
внутри архива будет использован параметр file
.
При добавлении содержимого, доступного по URL, параметр localname
должен быть указан, иначе будет выброшено исключение.
Этот метод аналогичен ZipArchive::addFile().
Список параметров
-
file
-
Полный или относительный путь к файлу в файловой системе, который должен быть добавлен в phar-архив.
-
localname
-
Путь, по которому файл будет сохранен в архиве.
Возвращаемые значения
Нет возвращаемого значения, в случае ошибки выбрасывается исключение.
Примеры
Пример #1 Пример использования Phar::addFile()
<?php
try {
$a = new Phar('/путь/к/phar.phar');
$a->addFile('/полный/путь/к/файлу');
// показывает, как хранится этот файл
$b = $a['полный/путь/к/файлу']->getContent();
$a->addFile('/полный/путь/к/файлу', 'моя_папка/file.txt');
$c = $a['моя_папка/file.txt']->getContent();
// показывает использоваие URL
$a->addFile('http://www.example.com', 'example.html');
} catch (Exception $e) {
// обработка ошибок
}
?>
Примечания
Замечание: Phar::addFile(), Phar::addFromString() и Phar::offsetSet() сохраняет новый phar-архив каждый раз при их вызове. Если производительность вызывает беспокойство, вместо этого следует использовать Phar::buildFromDirectory() или Phar::buildFromIterator().
Смотрите также
- Phar::offsetSet() - Изменение содержимого файла
- PharData::addFile() - Добавить существующие файлы к tar/zip-архиву
- Phar::addFromString() - Добавляет в phar-архив файл из строки
- Phar::addEmptyDir() - Добавляет в phar-архив пустую директорию