魔术方法
我们在前面学过魔术常量 比如 __LINE__ __FILE__
魔术方法是自动调用的比如:
在给不可访问属性赋值时,__set() 会被调用。
读取不可访问属性的值时,__get() 会被调用。
当对不可访问属性调用 isset() 或 empty() 时,__isset() 会被调用。
当对不可访问属性调用 unset() 时,__unset() 会被调用。
在对象中调用一个不可访问方法时,__call() 会被调用。
用静态方式中调用一个不可访问方法时,__callStatic() 会被调用。
我们可以利用魔术方法 做很多事情,比如 属性的读写权限啊 要是没有__set() 无法实现
<?php class animote{ private $name; function __set($name,$k){ $this->$name=$k; } public function show(){ echo $this->name; } } $b = new animote(); $b->name="中国"; $b->show(); //私有属性 设置了中国