CakeFest 2024: The Official CakePHP Conference

Phar::offsetSet

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 1.0.0)

Phar::offsetSetИзменение содержимого файла

Описание

public Phar::offsetSet(string $localName, resource|string $value): void

Замечание:

Для корректной работы с объектами Phar этому методу необходима установка значения php.ini phar.readonly в 0. В противном случае, будет выброшено исключение PharException.

Это реализация интерфейса ArrayAccess, позволяющая манипулировать содержимым Phar-архива в стиле доступа к элементам массива. offsetSet используется для изменения контента существующего файла, либо для создания нового.

Список параметров

localName

Имя файла (относительный путь).

value

Содержимое файла.

Возвращаемые значения

Ничего не возвращает.

Ошибки

Если опция phar.readonly установлен в 1, то будет выброшено исключение BadMethodCallException, так как модифицировать Phar-архив можно только, если phar.readonly равен 0. Если возникнут какие либо проблемы с записью на диск - выбрасывается исключение PharException.

Примеры

Пример #1 Пример использования Phar::offsetSet()

offsetSet не нужно вызывать напрямую. Используйте синтаксис [].

<?php
$p
= new Phar('/path/to/my.phar', 0, 'my.phar');
try {
// вызов offsetSet
$p['file.txt'] = 'Hi there';
} catch (
Exception $e) {
echo
'Не могу изменить file.txt:', $e;
}
?>

Примечания

Замечание: Phar::addFile(), Phar::addFromString() и Phar::offsetSet() сохраняет новый phar-архив каждый раз при их вызове. Если производительность вызывает беспокойство, вместо этого следует использовать Phar::buildFromDirectory() или Phar::buildFromIterator().

Смотрите также

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top