魔术方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了魔术方法相关的知识,希望对你有一定的参考价值。
特点:
以——(两个下划线)开头的类方法,会自动被调用。
常见的魔术方法有15个:
__set(变量名称,变量值)(不需要有返回值):在给不可访问属性赋值时,__set() 会被调用。
标准形式不能改:
需要设置值和值的类的属性名称,
魔术方法必须是公共的(Public),且不能定义为静态的(static)。被访问的属性名称,必须是字符串。当在类的外部调用不能直接访问不能直接访问的属性时,该函数会自动被调用。
property_exists(字符串形式的类名或要检查的对象,属性名字)— 检查对象或类是否具有该属性 。如果该属性存在则返回 TRUE ,如果不存在则返回 FALSE ,出错返回 NULL 。
__get(要调用的变量名):
标准形式不能改:
读取不可访问属性的值时,__get() 会被调用。
__get() 必须有返回值,最后肯定是以return结束。
unset() :销毁指定的变量。
Isset(): 检测变量是否设置
当不可访问属性调用isset()或empty()时isset()会被调用,传入的类是属性名称。
如果属性存在则返回属性值,反之返回null。
__Call:在对象中调用一个不可访问方法时,__call会自动调用。
标准格式:
__callStatic:用静态方式中调用一个不可访问方法时。
标准格式:
以上是关于魔术方法的主要内容,如果未能解决你的问题,请参考以下文章