Loading... PHP中把以两个下划线`__`开头的方法称为魔术方法(Magic methods),这些方法在PHP中充当了举足轻重的作用。 先放上来[官方文档](https://php.net/manual/zh/language.oop5.magic.php)。 | 名称 | 作用 | | ------------ | ------------ | | __construct() | 类的构造函数 | | __destruct() | 类的析构函数 | | __call() | 在对象中调用一个不可访问方法时调用 | | __callStatic() | 用静态方式中调用一个不可访问方法时调用 | | __get() | 获得一个类的成员变量时调用 | | __set() | 设置一个类的成员变量时调用 | | __isset() | 当对不可访问属性调用isset()或empty()时调用 | | __unset() | 当对不可访问属性调用unset()时被调用。 | | __sleep() | 执行serialize()时,先会调用这个函数 | | __wakeup() | 执行unserialize()时,先会调用这个函数 | | __toString() | 类被当成字符串时的回应方法 | | __invoke() | 调用函数的方式调用一个对象时的回应方法 | | __set_state() | 调用var_export()导出类时,此静态方法会被调用 | | __clone() | 当对象复制完成时调用 | | __autoload() | 尝试加载未定义的类 | | __debugInfo() | 打印所需调试信息 | > 不懂的话可以参考[这篇文章](https://segmentfault.com/a/1190000007250604#articleHeader6),写的挺详细的。(或者你愿意看[官方文档](https://www.php.net/manual/zh/language.oop5.magic.php)也可以 : D) 有什么特别的遇到再记录吧。 最后修改:2019 年 04 月 26 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏