【发布时间】:2014-06-17 16:11:29
【问题描述】:
下面的代码有什么问题?
$inFile 和 $outFile 总是由 machine1 而不是 machine2 初始化,这意味着对于 machine2 的实例,machine1 的配置被打开(并写入)。
我做错了什么?
我理解$this->somevar指的是实际实例化的对象(machine2)。
谢谢。
class machine1
{
private $inFile = "Config.ini";
private $outFile = "Config.web";
public $fileArray = array();
public function LoadData()
{
$handle = fopen(paths::$inifiles . $this->inFile,"r");
// Read the file
fclose($handle);
}
public function SaveData()
{
$handle = fopen(paths::$inifiles . $this->outFile,"w");
//write the file
fclose($handle);
}
}
class machine2 extends machine1
{
private $inFile = "Config_1.ini";
private $outFile = "Config_1.web";
}
$obj = new machine2();
$obj->LoadData();
$obj->SaveData();
【问题讨论】:
标签: php inheritance