欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php 的简单存在 (魔术方法作用之一:容错)

程序员文章站 2022-09-28 16:03:47
name =$name; $this->age =$age; } //获取魔术方法 # @param string $name public function...
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);