php 的简单存在 (魔术方法作用之一:容错)
<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
// 重载
class Person{
//定义属性
public $name;
private $age;
//构造方法
public function __construct($name,$age){
$this->name =$name;
$this->age =$age;
}
//获取魔术方法
# @param string $name
public function __get($param){
// return $this->$param;
#允许被访问的属性
$allow = array('age');
if(in_array($param, $allow)){
return $this->$param;
}
}
//__set() 设置魔术方法
#@param string $name
#param string $val
public function __set($name,$val){
$allow = array('age','money');
if(in_array($name, $allow)){
$this->$name=$val;
}
}
// __isset() 判定数据
public function __isset($name){
return isset($this->$name);
}
//__unset 销毁数据
public function __unset($name){
//建立unset列表
$allow =array('tail');
if(in_array($name,$allow)){
echo 'unset running';
unset($this->$name);
}
}
}
//实例化
$p = new Person('zp',21);
$p->age = 200;
echo $p->money = 200000000;
$p->tail ="a";
var_dump(isset($p->name));
var_dump(isset($p->age));
var_dump(isset($money));
// var_dump(empty($tail));
unset($p->tail);
// var_dump($tail);
</span>
登入後複製
http://www.bkjia.com/PHPjc/969599.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/969599.htmlTechArticlephp 的简单存在 (魔术方法作用之一:容错) name =$name;$this->age =$age;}//获取魔术方法# @param string $namepublic function __get($param){// return $this->$p...