我正在尝试下面的脚本,但它似乎没有拿起处理的新值bt __set
我正在尝试通过this阅读文章以获得OOP工作方式,直到magento 。有什么遗漏吗?setter将不会获得新的getters值
class MyClass{
public $name = "Mike";
private function __setProperty($newval){
$this->name = $newval;
}
public function __getProperty(){
return $this->name;
}
}
$obj = new MyClass;
//var_dump($obj);
echo $obj->name;
$obj->getProperty("Angela");
echo $obj->getProperty();
该教程你说你是从学习,明确规定了' setProperty' ...'$ obj = new MyClass; echo $ obj-> getProperty(); //获取属性值 $ obj-> setProperty(“我是一个新的属性值!”); //设置一个新的 echo $ obj-> getProperty(); //再次读出来显示更改。您正在使用'getProperty'。您没有按照该教程*“对T”*。 –
防止声明以'__'开头的方法名称。它们通常被保留用于PHP魔法方法。您在这里使用的用法与'__set'和'__get'根本没有关系。 – SOFe
你使用'__'方法很奇怪(和错误的'__'前缀方法往往是魔术方法)。二传手永远不会被调用(并声明为私有)。在任何时候,你实际上设置的财产... –