Php/docs/phar.using.stream

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

Phar アーカイブの使用法: phar ストリームラッパー

Phar ストリームラッパーは、fopen() による読み込みや 書き込み (追記は除く)、unlink()stat()fstat()fseek()rename() そしてディレクトリに対する opendir() といった機能に完全に対応しています。 バージョン 2.0.0 以降では rmdir()mkdir() にも対応します。

Phar アーカイブ内の各ファイルの圧縮やファイル単位のメタデータの操作も、 ストリーム上で可能です。

<?php$context = stream_context_create(array('phar' =>                                    array('compress' => Phar::GZ)),                                    array('metadata' => array('user' => 'cellog')));file_put_contents('phar://my.phar/somefile.php', 0, $context);?>

phar ストリームラッパーは、 リモートファイルを操作することはできません。つまり、INI 設定 allow_url_fopen および allow_url_include が無効になっている場合でも使用できます。

ストリーム操作だけで新しい phar アーカイブをゼロから作成することも可能ですが、 そんな場合は Phar クラスの組み込み機能を使用するほうが便利です。 ストリームラッパーが有用なのは、読み込み専用の操作を行う場合です。