魔术方法:
是指某些情况下,会自动调用的方法,称为魔术方法
PHP面向对象中,提供了这几个魔术方法,
他们的特点 都是以双下划线__开头的
__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state() 和 __clone()
__construct :构造方法
__destruct :析构方法
__clone() :克隆方法,当对象被克隆时,将会自动调用
class Human {
public $age = 22;
public function __clone() {
echo '有人克隆我!假冒';
}
}
$lisi = new Human();
$zhangsan = clone $lisi;
__get的作用
当我们调用一个权限上不允许调用的属性,和不存在的属性时,
__get魔术方法会自动调用,
并且自动传参,参数值是属性名.
__set的作用
当为无权操作的属性赋值时,
或不存在的属性赋值时,
__set()自动调用
且自动传2个参数 属性 属性值
__isset() 方法,
当 用isset() 判断对象不可见的属性时(protected/private/不存在的属性)
会引发 __isset()来执行
__unset()方法
当 用unset 销毁对象的不可见属性时,
会引发 __unset();
PHP 魔术方法__set__get__unset__isset使用
本站欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明: 文章转载自:爱思资源网 http://www.aseoe.com/show-21-83-1.html
转载请注明: 文章转载自:爱思资源网 http://www.aseoe.com/show-21-83-1.html