我们说我有以下课程:
class A {
public $Foo;
public $Foo2;
public static function $Current;
public static function setCurrent($Foo, $Foo2) {
self::$Current=new A($Foo, $Foo2);
}
public function __construct($Foo, $Foo2) {
$this->Foo=$Foo;
$this->Foo2=$Foo2;
}
}
如果我写下面的代码:
A::setCurrent(1,2);
是否有任何可能的方式,以后使用A::$Foo
,并获取A::$Current->Foo
的内容?
答案 0 :(得分:0)
您的代码有一些错误。
public static setCurrent
应为public static function setCurrent
,public __construct
应为public function __construct
。
您无法使用A::$Foo
,因为这不是静态属性。但你可以致电A::$Current->Foo
。
但是我认为班级的设计很差。你应该使用封装。我不明白你为什么要创建一个实例然后把它放在一个类属性中。