欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP 魔术方法:__get __set

程序员文章站 2022-03-21 09:31:55
...
从php5以后的版本,类就可以使用魔术方法了。php规定以两个下划线(__)开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开 头,除非是为了重载已有的魔术方法。

目前php已有的魔术方法有 __construct,__destruct,__call,__get,__set,__isset,__unset,__sleep,__wakeup,__toString,__set_state 和 __clone。

本节将谈谈__get,__set的使用方法:

__get()  - 读取不可访问属性的值时,__get() 会被调用

__set()  - 在给不可访问属性赋值时,__set() 会被调用

';
echo $example->public."\n";
echo $example->protected."\n";
echo $example->private."\n";
echo $example->other."\n";
echo '
'; $example->public = 'lic'; //这个赋值成功所有没有显示 $example->protected = 'tec'; $example->private = 'vat'; $example->other = 'er'; echo '
'; echo '打印 public 属性:'.$example->public;

结果如下:

pub
调用__get()方法:protected 调用__get()方法:private 调用__get()方法:other

name:protected,value:tec

name:private,value:vat

name:other,value:er

打印 public 属性:lic

以上就介绍了PHP 魔术方法:__get __set,包括了PHP 魔术方法方面的内容,希望对PHP教程有兴趣的朋友有所帮助。