PHP重载overloading技术

 时间:2026-02-15 01:25:51

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

先看本质:

属性的本质是:变量;

变量有几种操作:

赋值:

取值:

isset()判断是否存在:

unset()销毁变量:

则一个对象的属性也同样有该4种操作。

则,属性重载,就是对一个“未定义”的属性,进行如上4种操作之一时的应对机制(处理办法)。

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

2、1:__set($name, $value):

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

该方法带2个参数:

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

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

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

举例:

PHP重载overloading技术

3、2: __get($name)方法

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

该方法带1个参数:

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

代码示例:

PHP重载overloading技术

4、测试结果:

PHP重载overloading技术

5、3:__isset()判断:

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

该方法带1个参数:

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

PHP重载overloading技术

6、测试代码结果:

PHP重载overloading技术

7、4:__unset()销毁:

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

该方法带1个参数:

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

PHP重载overloading技术

  • php抽象类-抽象方法和重载overloading技术
  • php项目如何部署
  • over什么意思
  • php 环境变量配置教程
  • 如何练习crossover
  • 热门搜索
    国庆手抄报 扫黄打非手抄报 保护水资源手抄报 一二年级消防手抄报 关于母亲节的手抄报 清明节手抄报大全图片 文明城市手抄报 春节手抄报简单又漂亮 感恩老师手抄报 元宵节手抄报图片大全简单又漂亮