我已经实现了魔术函数__get()
和__set()
:
function __get($property) {
if(isset($this->$property)) {
return $this->$property;
} else {
return null;
}
}
function __set($property, $value) {
$this->$property = $value;
}
以下代码可以正常使用:
$connect->Hammer = "DoubleClawed";
echo $connect->Hammer;
但是,当我运行一些单元测试时,行:
$this->Id = (int) $configXML->ConfigurationFindResults->Configuration->Id;
给我:
尝试获取非对象的属性
在此之前还有其他神奇的变量。我也使用非魔术方法测试了这段代码,但它确实有效。为什么这条线将其关闭? ($configXML
是一个SimpleXML对象)
答案 0 :(得分:0)
你的魔法__get
和__set
看起来很好。 (我在我的应用程序中使用相同的代码)。
您的错误来自$configXML->ConfigurationFindResults->Configuration->Id;