從父

2014-10-07 26 views
0

獲取屬性調用我有以下代碼:從父

class Page extends APage{ 

    /** 
    * @findby selector 
    */ 
    protected $property 

    public function getPropertyCount(){ 
     count($this->property); 
    } 

} 


class APage{ 

    protected function initPropertyByAnnotation(){ 

    }  

} 

進出口使用硒,使用PHP,在硒的選擇與選擇的元素。 我想讓父類檢測到對孩子屬性的調用,所以我可以處理實際的選擇。

我認爲這是可能通過__get魔術方法,但事實證明,它只有當一個屬性沒有定義觸發。

有沒有一種方法來檢測調用某種方式,而不使用像getProperty這樣的幫助方法?

+0

__get()用於從不可訪問的屬性中讀取數據。所以如果你沒有在Page類中定義$屬性,它會調用__get – 2014-10-07 12:43:32

+0

但我需要定義它來設置和讀出註釋 – HerrWalter 2014-10-07 12:48:45

回答

1

您可以使用__get()函數將您的財產範圍更改爲私人
作爲文檔說:

__get()被用於從不可訪問的屬性讀取數據。

public function __get($field) { 
    if ($field == 'property') { //the name of your property 
     //do something that you want 
    } 
}