php 中的魔术常量有哪些
__sleep()serialize() 函数会检查类中是否存在一个魔术方法 __sleep()。如果存在,该方法会先被调用,然后才执行序列化操作
__wakeup()unserialize() 会检查是否存在一个 __wakeup() 方法。如果存在,则会先调用 __wakeup 方法,预先准备对象需要的资源。
__toString() 方法用于一个类被当成字符串时应怎样回应,例如echo $obj;时调用
__invoke()当尝试以调用函数的方式调用一个对象时,该方法会被调用
__set_state()起当调用 var_export() 导出类时,此方法会被调用
__debugInfo起当调用 var_dump() 导出类时,此方法会被调用
__set()在给不可访问属性赋值时,__set() 会被调用。
__get()读取不可访问属性的值时,__get() 会被调用。
__isset()当对不可访问属性调用 isset() 或empty() 时,__isset() 会被调用。
__unset()当对不可访问属性调用 unset() 时,__unset() 会被调用。
__call()在对象中调用一个不可访问方法时,__call() 会被调用。
__callStatic在静态上下文中调用一个不可访问方法时,__callStatic() 会被调用。