PHP魔术方 法具 体实践
发布时间:2023-02-11 12:44:06 所属栏目:PHP教程 来源:
导读: __set() 方法 在为当前环境下未定义或不可见的类属性赋值时,会自动调用 __set() 方法。定义该方法的语法格式如下:
public function __set($key, $value){
... ... ;
}
其中,参数
public function __set($key, $value){
... ... ;
}
其中,参数
__set() 方法 在为当前环境下未定义或不可见的类属性赋值时,会自动调用 __set() 方法。定义该方法的语法格式如下: public function __set($key, $value){ ... ... ; } 其中,参数 $key 是要操作的变量名称,$value 为变量 $key 的值。 【示例】下面使用简单的示例来演示一下 __set() 方法的使用。 <?php class Website{ public $name; private $url; public function __set($key, $value){ echo '为“'.$key.'”赋值“'.$value.'”失败!<br>'; } } $object = new Website(); $object -> name = 'C语言中文网'; $object -> url = ''; $object -> title = 'PHP教程'; ?> 运行结果如下: 为“url”赋值“”失败! 为“title”赋值“PHP教程”失败! 利用 __set() 方法的特性,我们可以通过 __set() 方法为类中的使用 private 关键词修饰的属性进行赋值或修改。如下所示: <?php class Website{ public $name; private $url = ''; public function __set($key, $value){ if(isset($this->$key)){ $this -> $key = $value; }else{ echo '为“'.$key.'”赋值“'.$value.'”失败!<br>'; } } public function getUrl(){ echo $this -> url; } } $object = new Website(); $object -> name = 'C语言中文网'; $object -> url = ''; $object -> title = 'PHP教程'; $object -> getUrl(); ?> 运行结果如下: 为“title”赋值“PHP教程”失败! (编辑:云计算网_宿迁站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐