PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのPharコンテキストオプションとは?compress・metadataの使い方とコード例


はじめに

Pharは「PHP Archive(PHPアーカイブ)」の略称です。あるPHPアプリケーションやライブラリに含まれるすべてのリソースを、配布しやすいように1つの.pharファイルへパッケージ化できます。このPharファイルは、phar://ラッパーを使うことで入出力(IO)ストリームとして扱うことが可能です。

phar://ラッパーで利用できる主なコンテキストオプションは、以下の2つです。

compress

圧縮形式を指定するためのオプションです。PHPには、圧縮フォーマットを表す次の定義済み定数が用意されています。

定数説明
Phar::NONE0x00000000圧縮なし
Phar::COMPRESSED0x0000F000いずれかの圧縮が適用されているかどうかを判定するための、ファイルフラグのビットマスク
Phar::GZ0x00001000zlib(gzip)による圧縮
Phar::BZ20x00002000bzip2による圧縮

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);
?>

  1. 【初心者向け】PHPタグとは?基本構文からショートタグまで徹底解説

    PHPタグとは?定義と基本的な使い方PHPスクリプトは、拡張子が「.php」のテキストファイルとして作成され、Webサーバー上に保存されます。サーバー上のPHPパーサーは、<?php(開始タグ)と?>(終了タグ)という特殊な文字列を探し出します。この2つのタグは「PHPタグ」と呼ばれ、その間に記述されたステートメントのみがパーサーによって解釈・実行されます。PHPタグで囲まれたコードは、HTMLドキュメントの中に自由に埋め込むことができます。埋め込まれたPHPコードはサーバー側で実行され、その処理結果だけが出力されるため、残りのHTML部分はクライアントのブラウザーにあるHTMLパ

  2. 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のすべてのバージョンで利用