2015-04-08 111 views
-2

我在兩個文件中有兩個類。 優先(parent.php):在父類中獲取子類變量

class Parent{ 
    var $ParentVar; 
} 

二(child.php):

class Child{ 
    var $ChildVar = 'im a childvar'; 
} 

我怎樣才能$ChildVar值設置爲$ParentVar在父類打印 '我是一個childvar'?

+0

在父項的構造函數中創建子實例,然後將childvar設置爲parentvar ?! – Rizier123

+0

您是否在使用任何類型的繼承或與兒童和家長有關的任何事情?或者這是純粹的獨立課程? –

+0

閱讀PHP文檔關於這裏的對象不是學校的地方.. – Svetoslav

回答

3

首先,你需要正確地使用繼承,所以:

class Child extends Parent { 

其次,你應該永遠不會被訪問從父孩子的價值。你可以做的是在Child類需要實現的Parent類中定義一個抽象函數,然後Parent中的代碼可以調用Child的函數。例如:

abstract class Parent { 
    abstract protected function returnSomeValue(); 
    public function outputSomeValue() { 
     return $this->returnSomeValue(); 
    } 
} 

class Child extends Parent { 
    protected $ChildVar = 'im a childvar'; 
    protected function returnSomeValue() { 
     return $this->ChildVar; 
    } 
}