Php/docs/phar.offsetset

提供:Dev Guides
< Php
移動先:案内検索

Phar::offsetSet

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

Phar::offsetSet内部ファイルに、外部ファイルの内容を設定する


説明

public Phar::offsetSet ( string $offset , string $value ) : void

注意:

このメソッドは、php.iniphar.readonly0 でないと Phar オブジェクトで動作しません。それ以外の場合は PharException がスローされます。

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


パラメータ

offset
Phar 内で変更するファイル名 (相対パス)。
value
ファイルの内容。


返り値

値を返しません。


エラー / 例外

phar.readonly1 の場合は BadMethodCallException がスローされます。 Phar の変更ができるのは phar.readonly が 0 のときだけだからです。Phar アーカイブへの変更をディスクに書き込む際に何らかのエラーが発生すると 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 'ファイルを変更できません: ', $e;}?>

参考