阅读量:2
在PHP中,__set() 是一个魔术方法,用于在对象上设置属性值。当您尝试访问一个对象的属性,但该属性不存在时,这个方法会被调用。您可以在这个方法中实现属性的赋值逻辑。以下是一个简单的示例:
class MyClass {
private $properties = array();
public function __set($name, $value) {
$this->properties[$name] = $value;
}
public function __get($name) {
if (array_key_exists($name, $this->properties)) {
return $this->properties[$name];
} else {
return null;
}
}
}
$obj = new MyClass();
$obj->property1 = "Value 1";
$obj->property2 = "Value 2";
echo $obj->property1; // 输出 "Value 1"
echo $obj->property2; // 输出 "Value 2"
在这个示例中,我们创建了一个名为 MyClass 的类,它具有一个私有属性 $properties 用于存储所有的属性及其值。__set() 方法接受两个参数:属性名($name)和值($value)。我们将属性名和值存储在 $properties 数组中。
__get() 方法用于获取对象的属性值。当您尝试访问一个不存在的属性时,这个方法会被调用。我们检查属性名是否存在于 $properties 数组中,如果存在,则返回对应的值,否则返回 null。
以上就是关于“php __set方法怎样实现属性赋值”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm