PHP中的魔术方法
- __construct(), __destruct()
- __tostring()
- 当对象被当做String使用时,这个方法会被自动调用
- Echo $obj;
- __invoke()
- 当对象被当成方法调用时,这个方法会被自动调用
- $obj(4)
- __call(), __callStatic()
- 当对象访问不存在的方法名称时,会被自动调用(方法的重载overloading)
- __get(), __set(), __isset(), __unset()
- 给不可访问的属性赋值时,__set()会被调用。
- 读取不可访问属性的值时,__get()会被调用。
- 对不可访问的属性调用isset()或empty()时,__isset()会被调用。
- 当对不可访问的属性调用unset()时,__unset()会被调用。
- 所谓不可访问,即调用时发现某个属性没有被定义。
- 这几个方法也被称为属性重载的魔术方法。
- __clone()