- __sleep serialize 之前被调用
- __wakeup unserialize 时被调用
- __toString 打印一个对象时被调用
- __set_state 调用 var_export 时被调用,用__set_state 的返回值作为 var_export 的返回值
- __construct 构造函数,实例化对象时被调用
- __destruct 析构函数,当对象销毁时被调用
- __call 对象调用某个方法,若存在该方法,则直接调用,若不存在,则调用__call 函数
- __callStatic 调用一个不存在的静态的方法的时候,自动触发。
- __get 读取一个对象的私有属性时,若属性存在,则直接返回,若不存在,则调用__get 函数
- __set 设置一个对象的私有属性名时,若属性存在,则直接赋值,若不存在,则调用__set 函数
- __isset 检测一个对象的私有属性是否存在时被调用
- __unset 删除或销毁 一个对象的私有属性时被调用
- __clone 克隆对象时被调用
- __autoload 实例化一个对象时,如果对应的类不存在,则该方法被调用
- __invoke 把实例化的对象当成函数使用的时候,自动触发invoke方法。
- __debugInfo() var_dump一个对象的时候,如果写了debugInfo自动执行debugInfo.返回值必须返回一个数组。
PHP的魔术方法
最新推荐文章于 2024-12-09 22:21:50 发布