PHPのPharコンテキストオプションとは?compress・metadataの使い方とコード例
はじめに
Pharは「PHP Archive(PHPアーカイブ)」の略称です。あるPHPアプリケーションやライブラリに含まれるすべてのリソースを、配布しやすいように1つの.pharファイルへパッケージ化できます。このPharファイルは、phar://ラッパーを使うことで入出力(IO)ストリームとして扱うことが可能です。
phar://ラッパーで利用できる主なコンテキストオプションは、以下の2つです。
compress
圧縮形式を指定するためのオプションです。PHPには、圧縮フォーマットを表す次の定義済み定数が用意されています。
| 定数 | 値 | 説明 |
|---|---|---|
| Phar::NONE | 0x00000000 | 圧縮なし |
| Phar::COMPRESSED | 0x0000F000 | いずれかの圧縮が適用されているかどうかを判定するための、ファイルフラグのビットマスク |
| Phar::GZ | 0x00001000 | zlib(gzip)による圧縮 |
| Phar::BZ2 | 0x00002000 | bzip2による圧縮 |
metadata
Pharアーカイブに関する付加情報を格納するためのオプションです。説明情報を保持した任意のPHP変数を、Phar::setMetadata()メソッドの引数として渡します。これにより、アーカイブ自体にメタデータを持たせることができます。
使用例
以下は、Pharファイルを作成する際にPharコンテキストオプションを設定するサンプルコードです。stream_context_create()で圧縮形式(gzip)とメタデータを指定し、file_put_contents()でファイルを書き込んでいます。
<?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);
?>
-
【初心者向け】PHPタグとは?基本構文からショートタグまで徹底解説
PHPタグとは?定義と基本的な使い方PHPスクリプトは、拡張子が「.php」のテキストファイルとして作成され、Webサーバー上に保存されます。サーバー上のPHPパーサーは、<?php(開始タグ)と?>(終了タグ)という特殊な文字列を探し出します。この2つのタグは「PHPタグ」と呼ばれ、その間に記述されたステートメントのみがパーサーによって解釈・実行されます。PHPタグで囲まれたコードは、HTMLドキュメントの中に自由に埋め込むことができます。埋め込まれたPHPコードはサーバー側で実行され、その処理結果だけが出力されるため、残りのHTML部分はクライアントのブラウザーにあるHTMLパ
-
PHPのpi()関数とは?使い方と定義済み定数との対応を実例付きで解説
pi()関数の定義と使い方PHPのpi()関数は、数学定数π(円周率)の値を返す関数です。戻り値はfloat型の「3.14159265359」であり、PHPにあらかじめ定義されている定数M_PIとまったく同じ値になります。構文pi ( void ) : floatパラメータこの関数は引数を受け取りません。引数なしでそのまま呼び出すことができます。戻り値pi()関数は数学定数πの値を返し、定義済みの数学定数M_PIと等価です。数式の中では、M_PIの代わりにpi()関数を使うこともできます。対応するPHPバージョンこの関数はPHP 4.x、PHP 5.x、PHP 7.xのすべてのバージョンで利用