Php/docs/phar.getstub

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

Phar::getStub

(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 1.0.0)

Phar::getStubPhar アーカイブの PHP ローダーあるいは起動スタブを返す


説明

public Phar::getStub ( ) : string

Phar アーカイブには、ブートストラップローダー (あるいは スタブ) というものが含まれています。これは PHP で書かれており、 そのアーカイブを PHP から実行したときに最初に実行されます。 たとえば次のようにインクルードしたり、

<?phpinclude 'myphar.phar';?>

あるいは単純に実行したりなどした場合です。

php myphar.phar
    

返り値

現在の Phar アーカイブの起動用ローダー (スタブ) の内容を文字列で返します。


エラー / 例外

スタブを Phar アーカイブから読み込めない場合に RuntimeException をスローします。


例1 Phar::getStub() の例

<?php$p = new Phar('/path/to/my.phar', 0, 'my.phar');echo $p->getStub();echo "==NEXT==\n";$p->setStub("<?phpfunction __autoload($class){    include 'phar://' . str_replace('_', '/', $class);}Phar::mapPhar('myphar.phar');include 'phar://myphar.phar/startup.php';__HALT_COMPILER(); ?>");echo $p->getStub();?>

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


<?php __HALT_COMPILER(); ?>
==NEXT==
<?php
function __autoload($class)
{
    include 'phar://' . str_replace('_', '/', $class);
}
Phar::mapPhar('myphar.phar');
include 'phar://myphar.phar/startup.php';
__HALT_COMPILER(); ?>

参考