関数・クラス解説

ReflectionProperty::__construct

version:PHP 5, PHP 7 (公式)

ReflectionProperty オブジェクトを作成する

公式リファレンス

書式

public ReflectionProperty::__construct ( mixed $class , string $name )

説明

警告

この関数は、現在のところ詳細な情報はありません。引数のリストのみが記述されています。

パラメータ

class
プロパティを含むクラスの名前。
name
調べたいプロパティの名前。

返値

値を返しません。

エラー

private あるいは protected なプロパティの値を取得あるいは設定しようとすると、 例外がスローされます。

注意

警告この関数は、現在のところ詳細な情報はありません。引数のリストのみが記述されています。

サンプル

例1 ReflectionProperty::__construct() の例

class Str {     public $length  = 5; } // ReflectionProperty クラスのインスタンスを作成します $prop = new ReflectionProperty('Str', 'length'); // 基本情報を表示します printf(     "===> The%s%s%s%s property '%s' (which was %s)\n" .     "     having the modifiers %s\n",         $prop->isPublic() ? ' public' : '',         $prop->isPrivate() ? ' private' : '',         $prop->isProtected() ? ' protected' : '',         $prop->isStatic() ? ' static' : '',         $prop->getName(),         $prop->isDefault() ? 'declared at compile-time' : 'created at run-time',         var_export(Reflection::getModifierNames($prop->getModifiers()), 1) ); // Str のインスタンスを作成します $obj= new Str(); // 現在の値を取得します printf("---> Value is: "); var_dump($prop->getValue($obj)); // 値を変更します $prop->setValue($obj, 10); printf("---> Setting value to 10, new value is: "); var_dump($prop->getValue($obj)); // オブジェクトを出力します var_dump($obj);

上の例の出力は、たとえば以下のようになります。

===> The public property 'length' (which was declared at compile-time) having the modifiers array ( 0 => 'public', ) ---> Value is: int(5) ---> Setting value to 10, new value is: int(10) object(Str)#2 (1) { ["length"]=> int(10) }

例2 ReflectionProperty クラスを用いた、private および protected プロパティの値の取得

class Foo {     public $x = 1;     protected $y = 2;     private $z = 3; } $obj = new Foo; $prop = new ReflectionProperty('Foo', 'y'); $prop->setAccessible(true); /* PHP 5.3.0 以降 */ var_dump($prop->getValue($obj)); // int(2) $prop = new ReflectionProperty('Foo', 'z'); $prop->setAccessible(true); /* PHP 5.3.0 以降 */ var_dump($prop->getValue($obj)); // int(2)

上の例の出力は、たとえば以下のようになります。

int(2) int(3)

参考

  • ReflectionProperty::getName() - プロパティ名を取得する
  • コンストラクタ
  • ワード検索


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

    関数名アルファベット別

    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用の拡張モジュール