PharData::offsetSet

tar/zip の内部のファイルに、外部ファイルあるいは文字列の内容を設定する

説明

public void PharData::offsetSet(string $localName, resourcestring $value)

これは ArrayAccess インターフェイスを実装したものです。 これにより、tar/zip アーカイブの内容に対して配列形式の角括弧を使用したアクセスが可能となります。 offsetSet を使用して、tar/zip アーカイブの既存ファイルの変更や 新しいファイルの追加を行います。

パラメータ

localName

tar あるいは zip アーカイブ内で変更するファイル名 (相対パス)。

value

ファイルの内容。

戻り値

値を返しません。

エラー / 例外

Phar アーカイブへの変更をディスクに書き込む際に何らかのエラーが発生すると PharException がスローされます。

例1 PharData::offsetSet の例

offsetSet は直接使用してはいけません。 配列に [] 演算子でアクセスする際に使用されます。

<?php
$p = new PharData('/path/to/my.tar');
try {
    // offsetSet がコールされます
    $p['file.txt'] = 'Hi there';
} catch (Exception $e) {
    echo 'file.txt を変更できません: ', $e;
}
?>

注意

注意: PharData::addFile, PharData::addFromString, PharData::offsetSet は、呼び出されるたびに新しいPharアーカイブを生成します。パフォーマンスを気にするなら、代わりに PharData::buildFromDirectoryPharData::buildFromIterator を使うべきです。

参考

  • Phar::offsetSet