簡體   English   中英

您可以在php中靜態訪問非靜態類屬性嗎?

[英]Can you access a non-static class property statically in php?

假設我有以下課程:

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

您的代碼有一些錯誤。

public static setCurrent應該是public static function setCurrentpublic __construct應該是public function __construct

您不能使用A::$Foo因為這不是靜態屬性。 但是您可以調用A::$Current->Foo

但是我認為該課程的設計很差。 您應該使用封裝。 而且我不明白為什么您要創建一個實例,然后將其放在類屬性中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM