Phar::offsetSet

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

Phar::offsetSetSet the contents of an internal file to those of an external file

說(shuō)明

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

注意:

此方法需要 將 php.ini 中的 phar.readonly 設(shè)為 0 以適合 Phar 對(duì)象. 否則, 將拋出PharException.

This is an implementation of the ArrayAccess interface allowing direct manipulation of the contents of a Phar archive using array access brackets. offsetSet is used for modifying an existing file, or adding a new file to a Phar archive.

參數(shù)

localName

The filename (relative path) to modify in a Phar.

value

Content of the file.

返回值

No return values.

錯(cuò)誤/異常

if phar.readonly is 1, BadMethodCallException is thrown, as modifying a Phar is only allowed when phar.readonly is set to 0. Throws PharException if there are any problems flushing changes made to the Phar archive to disk.

范例

示例 #1 A Phar::offsetSet() example

offsetSet should not be accessed directly, but instead used via array access with the [] operator.

<?php
$p 
= new Phar('/path/to/my.phar'0'my.phar');
try {
    
// calls offsetSet
    
$p['file.txt'] = 'Hi there';
} catch (
Exception $e) {
    echo 
'Could not modify file.txt:'$e;
}
?>

注釋

注意: Phar::addFile(), Phar::addFromString() and Phar::offsetSet() save a new phar archive each time they are called. If performance is a concern, Phar::buildFromDirectory() or Phar::buildFromIterator() should be used instead.

參見(jiàn)