php中把以两个下划线(__)开头的方法称之为魔术方法。魔术方法包括:
- __construct() 类的构造方法 构建方法时被调用
- __destruct() 类的析构方法 明确销毁对象或脚本结束时被调用
- __call() 在一个类中调用一个不可访问或不存在的方法时使用
- __callStatic() 调用不可访问或者是不存在的静态方法时被调用
- __get() 获取不可访问或不存在的属性时调用
- __set() 当给不可访问或不存在的属性赋值时被调用
- __isset() 对不可访问或不存在的属性调用isset()或empty()时被调用
- __unset() 对不可访问或不存在的属性进行unset时被调用
- __sleep() 当使用serlalize时被调用,当你不需要保存大对象的所有数据时很有用
- __wakeup() 当使用unserialize时被调用,可用于做些对象的初始化操作
- __clone() 进行对象clone时被调用,用来调整对象的克隆行为
- __toString() 当一个类被转换成字符串时被调用
- __invoke() 当以函数方式调用对象时被调用
- __set_state() 当调用var_export()导出类时,此静态方法被调用
- __debuginfo() 当调用var_dump()打印对象时被调用
PHP 魔术方法浅谈
原文:https://www.cnblogs.com/wawjandcsws/p/10583337.html