Phar::offsetGet

指定したファイルの PharFileInfo オブジェクトを取得する

説明

public SplFileInfo Phar::offsetGet(string $localName)

これは ArrayAccess インターフェイスを実装したものです。 これにより、Phar アーカイブの内容に対して配列形式の角括弧を使用したアクセスが可能となります。 Phar::offsetGet を使用して、Phar アーカイブからファイルを取得します。

パラメータ

localName

Phar 内で探すファイル名 (相対パス)。

戻り値

PharFileInfo オブジェクトを返します。 これを使用して、ファイルの内容を順に処理したりファイルの情報を取得したりします。

エラー / 例外

そのファイルが Phar アーカイブ内に存在しない場合に、このメソッドは BadMethodCallException をスローします。

例1 Phar::offsetGet の例

ArrayAccess インターフェイスを実装した他のクラスと同様、 Phar::offsetGet[] 演算子を使用した場合に自動的にコールされます。

<?php
$p = new Phar(dirname(__FILE__) . '/myphar.phar', 0, 'myphar.phar');
$p['exists.txt'] = "file exists\n";
try {
    // 自動的に offsetGet() をコールします
    echo $p['exists.txt'];
    echo $p['doesnotexist.txt'];
} catch (BadMethodCallException $e) {
    echo $e;
}
?>

上の例の出力は以下となります。

file exists
Entry doesnotexist.txt does not exist

参考

  • Phar::offsetExists
  • Phar::offsetSet
  • Phar::offsetUnset