(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)
PharData::offsetSet — Set the contents of a file within the tar/zip to those of an external file or string
$offset
, string $value
) : voidThis is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a tar/zip archive using array access brackets. offsetSet is used for modifying an existing file, or adding a new file to a tar/zip archive.
offset
The filename (relative path) to modify in a tar or zip archive.
value
Content of the file.
No return values.
Throws PharException if there are any problems flushing changes made to the tar/zip archive to disk.
Example #1 A PharData::offsetSet() example
offsetSet should not be accessed directly, but instead used
via array access with the []
operator.
<?php
$p = new PharData('/path/to/my.tar');
try {
// calls offsetSet
$p['file.txt'] = 'Hi there';
} catch (Exception $e) {
echo 'Could not modify file.txt:', $e;
}
?>
Note: PharData::addFile(), PharData::addFromString() and PharData::offsetSet() save a new phar archive each time they are called. If performance is a concern, PharData::buildFromDirectory() or PharData::buildFromIterator() should be used instead.