3

クラス接頭辞を使用せずにPHPクラスの静的変数にアクセスする方法はありますか?

例:

class A {

   protected static $x = "blahblah";

   public static function p() {

       print(A::$x); // <= Is there no way to omit A:: ???

   }

}

その時点で $x が初期化されていないローカル変数である可能性があることは理解していますが、これらの場合、インタプリタは以前に宣言されたメンバーとして $x を解決する必要があると言う/宣言する/設定できることは非常に理にかなっています。クラスプレフィックスをどこにでも入力することは、IMHOの大失敗です。

4

1 に答える 1

5

使用しているメソッドが同じクラスにある場合は、self:: または static:: を使用できます。

例えば:

class A {

   protected static $x = "blahblah";

   public static function p() {

       print(self::$x);

   }

}
于 2013-01-06T14:17:28.997 に答える