2016-08-24 62 views
0
class GrandClass { 
    public $data; 
    public function __construct() { 
     $this->someMethodInTheParentClass(); 
    } 
    public function someMethodInTheParentClass() { 
     $this->$data = 123456; 
    } 
} 

class MyParent extends GrandClass{ 
    public function __construct() { 
     parent::__construct(); 
    } 
} 

class Child extends MyParent { 
    // public $data; 
    public function __construct() { 
     parent::__construct(); 
    } 
    public function getData() { 
     return $this->data; 
    } 
} 

$a = new Child(); 
var_dump($a->getData()); 

PHP公告:未定義的變量:在d數據:\ test.php的第7行在PHP爲什麼不工作

PHP致命錯誤:在d無法訪問空屬性:\ test.php的第7行

+2

嘗試函數:$ this->數據 –

+2

使用$這 - >數據未$這 - > $數據 –

+2

$這個 - >數據,而不是$這 - > $數據 –

回答

4

更新您的功能someMethodInTheParentClass低於使用$這 - >數據= 123456;

public function someMethodInTheParentClass() { 
     $this->data = 123456; 
    } 
+0

非常感謝〜! –

+0

歡迎好友,這是很好的幫助 –

2
Use `$this->data = 123456; `instead of` $this->$data = 123456;` in below function 

public function someMethodInTheParentClass() { 
     $this->data = 123456; 
} 
+0

如果可以,你可能想要充實一點你的答案,也許可以格式化你的答案:) – Epodax

+0

yaa ..絕對 –

+0

非常感謝〜 ! –

0

MyParent和Child類中的構造方法是不必要的。