__get() 调用未定义的属性时调用
__set() 给一个未定义的属性赋值时调用
__isset() 当在一个未定义的属性上调用isset()函数时调用此方法
__unset() 当在一个未定义的属性上调用unset()函数时调用此方法
__sleep() 串行化的时候用
__wakeup() 反串行化的时候调用
__construct() 当一个对象被创建时调用此方法
__destruct() PHP将在对象被销毁前(即从内存中清除前)调用这个方法
__call() 当调用一个未定义(包括没有权限访问)的方法是调用此方法
__callStatic 它的工作方式类似于 __call() 魔术方法,__callStatic() 是为了处理静态方法调用
__autoload() 使用尚未被定义的类时自动调用
__clone() PHP5中的对象赋值是使用的引用赋值,使用clone方法复制一个对象时,对象会自动调用__clone魔术方法,如果在对象复制需要执行某些初始化操作,可以在__clone方法实现。
__toString() 方法在将一个对象转化成字符串时自动调用
__invoke() 当尝试以调用函数的方式调用一个对象时
__debugInfo var_dump() 时调用
__serialize() 序列化时调用
__unserialize() 反序列化时调用 比sleep wakeup 级别高 他们两个会失效
PHP魔术方法
最新推荐文章于 2024-03-17 21:04:30 发布