2017年7月20日~~~
PHP面向对象
1.魔术方法
__get():读取不可访问属性的值时,它会被调用(在类的外部不能直接访问的顺序时,该函数方法自动被调用)
必须有返回值,所以最后结束的肯定是return语句
被访问的属性的名称必须是一个字符串
__set():在给不可用访问属性赋值时,它会被调用
当设置类中的不能直接访问的属性时,自动调用该函数方法
魔术方法的标准格式不能改变
__set不需要有返回值
需要设置属性的名称
需要给属性设置值
Property_exists用于判断类当中是否包含指定名称的属性
__isset():当对不可访问属性调用 isset() 或 empty() 时,__isset() 会被调用。
魔术方法,判断类中的属性是否被设置
传入的是类的属性的名称
如果属性存在则返回该属性的值,如果不存在,返回空
__unset():当对不可访问属性调用 unset() 时,__unset() 会被调用。
__call():在对象中调用一个不可访问方法时,__call() 会被调用
在对象中调用一个不能直接访问的非静态方法时,__call()会被自动调用
调用的是非静态函数方法
被访问的函数方法时,字符串格式
传递过来的函数方法的参数,数组格式
__callStatic():用静态方式中调用一个不可访问方法时,__callStatic() 会被调用。
__toString():方法用于一个类被当成字符串时应怎样回应
Print_r():打印关于变量的易于理解的信息。
__toString()必须返回字符串字符串内容。
魔术方法,当以字符串格式输出类的对象时,默认被自动调用
该函数方法必须有一个return语句,且返回值必须是字符串
__clone():当复制完成时,如果定义了 __clone() 方法,则新创建的对象(复制生成的对象)中的 __clone() 方法会被调用,可用于修改属性的值(如果有必要的话)。
当类的对象被克隆时自动调用被执行
可以修改被克隆的数据值
浙公网安备 33010602011771号