Phar::createDefaultStub
(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 2.0.0)
Phar::createDefaultStub — phar ファイルフォーマット用のスタブを作成する
説明
final public static Phar::createDefaultStub
([ string $indexfile
[, string $webindexfile
]] ) : string
このメソッドは、phar ファイル形式のスタブを作成するためのもので、 tar 形式や zip 形式の phar アーカイブでは使用しません。
PHP でかかれた起動ローダー (スタブ) を含む Phar アーカイブを PHP から実行するには、次のようにそれをインクルードするか、
<?phpinclude 'myphar.phar';?>
あるいは単に実行します。
php myphar.phar
このメソッドは、phar アーカイブの起動時に実行するスタブ用のメソッドを作成します。 さらに、phar アーカイブをコマンドラインやウェブサーバーから実行する際には別のファイルを指定することもできます。 ローダースタブは Phar::interceptFileFuncs() もコールでき、PHP のアプリケーションからファイルシステムを簡単に扱えるようになります。 phar 拡張モジュールが存在しない場合は、 ローダースタブが phar アーカイブの内容を一時ディレクトリに展開し、 そのファイルを操作します。 シャットダウン関数が、この一時ファイル群を削除します。
返り値
独自の起動ローダー (スタブ) を文字列で返します。 これを用いて作成した Phar アーカイブは、 Phar 拡張モジュールが有効になっていない環境でも実行することができます。
例
例1 Phar::createDefaultStub() の例
<?phptry { $phar = new Phar('myphar.phar'); $phar->setStub($phar->createDefaultStub('cli.php', 'web/index.php'));} catch (Exception $e) { // エラー処理}?>
参考
- Phar::setStub() - Phar アーカイブの PHP ローダ (あるいは起動スタブ) を設定する
- Phar::getStub() - Phar アーカイブの PHP ローダーあるいは起動スタブを返す