php中的魔术方法有construct(), destruct(), call(), callStatic(), get(), set(), isset(), unset(), sleep(), wakeup(), toString(), invoke(), set_state(), clone() 和 __debugInfo() 等方法在 PHP 中被称为”魔术方法”(Magic methods)。在命名自己的类方法时不能使用这些方法名,除非是想使用其魔术功能。
__get
/__set
类的属性魔术方法,当外部访问私有或者未定义属性时自动调用__call
/__callStatic
类的方法魔术方法,当外部访问私有或者未定义方法以及静态方法的时候自动调用 __callStatic
也必须声明为static__toString
将类的对象当成字符串使用时自动调用__invoke
将类的对象当成函数使用时自动调用