PHP的魔术方法使用

zhangkala 2018-09-07

属性重载:

如果使用一个对象的未定义的属性,就构成属性重载。

属性重载,就是对一个“未定义”的属性,进行应对机制(处理办法)。

每一个操作,都会自动各自去调用一个预先定义好的“魔术方法”:

1:__set($name, $value):

当对一个对象的未定义的属性,进行“赋值”时,此时会自动调用类中预先定义好的魔术方法:__set();

该方法带2个参数:

$name : 表示该正在赋值的未定义的属性名;

$value : 表示该正在赋值的值;

实际上,之所以对一个对象的未定义的属性进行赋值,自然是希望该对象来保存该数据。

举例:

PHP的魔术方法使用

2: __get($name)方法

当对一个对象的未定义的属性,进行“取值”时,此时会自动调用类中预先定义好的魔术方法:__get();

该方法带1个参数:

$name : 表示该正在取值的未定义的属性名;

代码示例:

PHP的魔术方法使用

测试结果:

PHP的魔术方法使用

3:__isset()判断:

当对一个对象的未定义的属性,进行“isset()”判断时,此时会自动调用类中预先定义好的魔术方法:__isset();

该方法带1个参数:

$name : 表示该正在isset()的未定义的属性名;

PHP的魔术方法使用

测试代码结果:

PHP的魔术方法使用

4:__unset()销毁:

当对一个对象的未定义的属性,进行“unset()”操作时,此时会自动调用类中预先定义好的魔术方法:__unset();

该方法带1个参数:

$name : 表示该正在unset()的未定义的属性名;

PHP的魔术方法使用

如果想要学习交流PHP的朋友,可以关注小编,私信【学习交流】手机用户可以直接私信,电脑端尚未开放此功能,需要下载app,我已经设置了自动回复,具体后续会自动回复各位。

PHP的魔术方法使用

相关推荐