静的変数を取り出すためにPHPの中括弧構文を使用しようとしています。ここでは簡単なテストクラスです:静的変数でPHP複合(中括弧)構文を使用するときの問題
class asdf{
public static $variable = '[email protected]';
public static function getValue() {
return "{asdf::$variable}bar.com";
}
}
私はいくつかのバリエーション、そのうちのいくつか(のような"${asdf::$variable}"
)を試した私に当時のルックアップとして戻って解析されます文字列として結果を与えます。だから、私はほとんどが働いていることを知っています。
私はその機能を呼び出すと、養成のために、私は '[email protected]'のようなものを期待しています。
私はそれが構文上の問題であることを期待していますが、official documentationで何か便利なものが見つかりませんでした。それとも、それは多くの人ができるだけ静的なことを避けることがわかっているので、不足しているかもしれません。
する必要がある場合は、単一の波括弧を使用して '複雑な構文の下部に述べたように、あなたも({})は動作しません、変数varの構文を使用することができます関数またはメソッドの戻り値またはクラス定数または静的クラス変数の値にアクセスするためのクラスです。静的クラス変数にアクセスしようとしているところです。 – fyrye
[PHP静的変数の二重引用符で囲まれた可能性のある重複](https://stackoverflow.com/questions/1267093/php-static-variables-in-double-quotes) – fyrye