博客列表 >OOP 魔术方法 __isset与__unset

OOP 魔术方法 __isset与__unset

梁凯达的博客
梁凯达的博客原创
2019年01月10日 22:28:13945浏览

实例

<?php

	//isset() 检测变量是否被声明 是返回true  否则返回false
	//unset() 销毁变量
	

	// $a = 100;
	// var_dump(isset($a));//
	// var_dump(isset($b));
	// unset($a);
	// var_dump(isset($a));
	

	class A{
		public $name = '看好屏幕别瞎动 我都能看到!';
		private $age = 18;
		private $sex = '男';
		//在没有权限使用isset函数来判断属性的时候自动调用
		public function __isset($a){
			//echo '我被调用了';
			//echo $a;
			return isset($this->$a);
		}
		//在没有权限使用unset函数销毁属性的时候自动调用
		public function __unset($b){
			echo '我被调用了';
			echo $b;
			unset($this->$b);
		}
	}

	$a = new A;
	var_dump(isset($a->name));
	var_dump(isset($a->age));
	if(isset($a->sex)){
		echo '存在';
	}else{
		echo '不存在';
	}
	echo '<hr/>';

	var_dump($a);
	//unset($a->name);
	unset($a->age);
	unset($a->sex);
	var_dump($a);

运行实例 »

点击 "运行实例" 按钮查看在线实例

 

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议