PHP 常用的魔术方法

构造函数
__construct()、
  
析构函数
__destruct()、
  
当调用一个未定义(包括没有权限访问)的方法是调用此方法
__call()、
 
处理静态方法调用
__callStatic()、
 
当调用一个未定义的属性时访问此方法
__get()、
 
给一个未定义的属性赋值时调用
__set()、
 
当在一个未定义的属性上调用isset()函数时调用此方法
__isset()、
 
当在一个未定义的属性上调用unset()函数时调用此方法
__unset()、
 
串行化的时候用
__sleep()、
 
反串行化的时候调用
__wakeup()、
 
一个对象转化成字符串时自动调用
__toString()、
 
对象赋值是使用的引用赋值,使用clone方法复制一个对象时,对象会自动调用__clone魔术方法,如果在对象复制需要执行某些初始化操作,可以在__clone方法实现
__clone()、
 
调用函数的方式调用一个对象时,__invoke 方法会被自动调用
__invoke()、
 
当调用var_export()时
__set_state()、
  
__autoload()

使用尚未被定义的类时自动调用。通过此函数,脚本引擎在 PHP 出错失败前有了最后一个机会加载所需的类。

有点需要注意: 在 __autoload 函数中抛出的异常不能被 catch 语句块捕获并导致致命错误

原文地址:https://www.cnblogs.com/fangdada/p/14783948.html