phar アーカイブのメタデータを設定する

# PharData::setMetadata

(No version information available, might only be in Git)

PharData::setMetadata — phar アーカイブのメタデータを設定する

### 説明

public function PharData::setMetadata(mixed `$metadata`): void

> 注意: このメソッドは、php.ini の `phar.readonly` が `0` でないと Phar オブジェクトで動作しません。それ以外の場合は PharException がスローされます。

Phar::setMetadata() は、 phar アーカイブ全体に関する独自の情報を保存する場合に使用します。 ファイル固有のメタデータについては PharFileInfo::setMetadata() を使うようにしましょう。大きなメタデータを使用すると、 phar アーカイブの読み込み時のパフォーマンスが低下します。

メタデータの使用例として考えられるのは、 アーカイブの中で最初に実行するファイルはどれかを指定したり、 » PEAR の package.xml のようなマニフェストの場所を指定したりすることです。 しかし、phar アーカイブに関する有用なデータなら何を保存してもかまいません。

### パラメータ

`metadata`

  phar アーカイブについての情報を含む、PHP の変数。

### 戻り値

値を返しません。

### 例

例1 Phar::setMetadata() の例

    <?php
    // 確実に消しておきます
    @unlink('brandnewphar.phar');
    try {
        $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');
        $p['file.php'] = '<?php echo "hello"';
        $p->setMetadata(array('bootstrap' => 'file.php'));
        var_dump($p->getMetadata());
    } catch (Exception $e) {
        echo 'phar の作成/変更ができません:', $e;
    }
    ?>

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

    array(1) {
      ["bootstrap"]=>
      string(8) "file.php"
    }

### 参考

- Phar::getMetadata() - phar アーカイブのメタデータを返す
- Phar::delMetadata() - phar のグローバルメタデータを削除する
- Phar::hasMetadata() - ファイルがグローバルなメタデータを持つかどうかを返す

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open