资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php对象直接访问私有属性

name=$name;
			$this->age=$age;
			$this->sex=$sex;
		}
		
		/*
			输出 Cannot access private property Person::$name
			
			对象不能直接访问和设置私有属性的值,但是通过魔术方法__get($proName), __set($proName,$proValue)可以做到.
			步骤:
				1.重写魔术方法__get($property) , __set($proName,$proValue)
				2.用对象直接访问或设置私有属性
					$p1->name="对象直接访问私有属性";
					echo $p1->name;
				3.对象直接访问或设置私有属性时,会自动调用魔法方法__get($proName), __set($proName,$proValue)
		*/
		function __get($proName){
			return $this->$proName;
		}
		
		function __set($proName,$proValue){
			$this->$proName=$proValue;
		}
		
		function say(){
			echo "$this->name:我的年龄$this->age,性别:$this->sex
"; } function run(){ $this->left(); $this->right(); } private function left(){ echo "left"; } private function right(){ echo "right"; } //析构方法,对象销毁前自动调用 function __destruct(){ echo "$this->name:我走了
"; } }   $p1 = new Person("name1",15,"女"); $p2 = new Person("name2",20,"男"); $p3 = new Person("name3",30,"女"); /* 对象直接访问或设置私有属性 */ $p1->name="对象直接访问私有属性"; echo $p1->name."
"; /* 输出,注意__destruct()的输出顺序 name1:我的年龄15,性别:女 name2:我的年龄20,性别:男 name3:我的年龄30,性别:女 name1:我走了 name3:我走了 name2:我走了 */ $p1->say(); $p2->say(); $p3->say(); $p1=null; ?>

网站题目:php对象直接访问私有属性
网站URL:http://cdkjz.cn/article/ieeodp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220