関数・クラス解説

Phar::setStub

version:PHP 5 >= 5.3.0, PHP 7, PECL phar (公式)

Phar アーカイブの PHP ローダ (あるいは起動スタブ) を設定する

公式リファレンス

書式

public Phar::setStub ( string $stub [, int $len = -1 ] ) : bool

説明

注意:

このメソッドは、php.ini の phar.readonlyが 0 でないと Pharオブジェクトで動作しません。それ以外の場合はPharException がスローされます。

このメソッドを使用して、新しい Phar アーカイブに PHP 起動ローダスタブを追加します。あるいは、既存の Phar アーカイブのローダスタブを置き換えます。

Phar アーカイブのローダスタブは、 このようにアーカイブを直接インクルードした際に使用されます。

include 'myphar.phar';

phar ストリームラッパーを使用して次のようにファイルをインクルードした際には、 ローダにはアクセスしません。

include 'phar://myphar.phar/somefile.php';

パラメータ

stub
文字列あるいはオープンしたストリームハンドル。 この phar アーカイブの実行スタブとして使用します。
len

返値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

エラー

php.ini で phar.readonly が有効になっている場合に UnexpectedValueException がスローされます。 変更をディスクに書き込む際に何らかの問題が発生した場合は PharException がスローされます。

更新履歴

バージョン 説明
5.4.0 len パラメータが追加されました。

サンプル

例1 Phar::setStub() の例

try {     $p = new Phar(dirname(__FILE__) . '/brandnewphar.phar', 0, 'brandnewphar.phar');     $p['a.php'] = 'setStub(' ');    include 'phar://brandnewphar.phar/a.php';    var_dump($p->getStub());    $p['b.php'] = '  var_dump("World");';     $p->setStub(' ');    include 'phar://brandnewphar.phar/b.php';    var_dump($p->getStub());} catch (Exception $e) {    echo 'brandnewphar.phar での書き込み操作に失敗しました: ', $e;}?>

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

string(5) "Hello" string(82) " var_dump("First"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); " string(5) "World" string(83) " var_dump("Second"); Phar::mapPhar("brandnewphar.phar"); __HALT_COMPILER(); "

参考

  • Phar::getStub() - Phar アーカイブの PHP ローダーあるいは起動スタブを返す
  • Phar::createDefaultStub() - phar ファイルフォーマット用のスタブを作成する
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール