使用echo方法直接输出对象时会调用其__toString()方法
与__sleep()方法相对
serialize()方法会检查类中是否存在__sleep()魔术方法。如果存在,就会调用该方法来执行序列化操作。
与__isset()类似
介绍__isset()方法之前,我先介绍下issset()方法。isset()方法主要用于判断某个变量是否被设置
__set($property, $value) 方法用来设置对象的私有属性
当试图访问外部对象的私有属性时,程序会抛出异常并结束执行。
当程序中调用未定义的静态方法时,__callStatic()方法会被调用。
该方法有两个参数。第一个参数$function_name自动接收未定义方法的名称,第二个参数$arguments以数组的方式接收该方法调用的多个参数。
析构方法可以在对象销毁之前执行一些操作,如关闭文件、清空结果集,等等。 析构方法是PHP5引入的新特性。 析构方法的声明格式与构造方法 __construct() 类似,就是说__destruct()也以双下划线开头,其名称也是固定的。