3

メンバーの名前がクラス定数で指定されているオブジェクトのメンバーにアクセスすることは PHP で可能ですか?

次の例を検討してください。

class X{
    const foo = "abc";
}

class Y{
    public $abc;
}

$y = new Y();

$y->X::foo = 23; //This does not work

パーサーは最後の行を受け入れませんが、これは私が望むものです。クラス定数に格納されている名前でフィールドにアクセスしたいX::foo。それを達成するための構文はありますか?

4

2 に答える 2

3

このようにコードを書く必要があります

$y->{X::foo} = 23;

それが役に立てば幸い

于 2014-01-20T17:33:21.890 に答える