首页 > 其他 > 详细

__get __set

时间:2016-06-08 12:22:45      阅读:114      评论:0      收藏:0      [点我收藏+]
<?php 
class Person 
{ 
  //下面是人的成员属性,都是封装的私有成员 
  private $name; //人的名子 
  private $sex; //人的性别 
  private $age; //人的年龄 
  //__get()方法用来获取私有属性 
  private function __get($property_name) 
  { 
    echo "在直接获取私有属性值的时候,自动调用了这个__get()方法<br>"; 
    if(isset($this->$property_name)) 
    { 
      return($this->$property_name); 
    }else{ 
      return(NULL); 
    } 
  } 
  //__set()方法用来设置私有属性 
  private function __set($property_name, $value) 
  { 
    echo "在直接设置私有属性值的时候,自动调用了这个__set()方法为私有属性赋值<br>"; 
    $this->$property_name = $value; 
  } 
} 
$p1=newPerson(); 
//直接为私有属性赋值的操作,会自动调用__set()方法进行赋值 
$p1->name="张三"; 
$p1->sex="男"; 
$p1->age=20; 
//直接获取私有属性的值,会自动调用__get()方法,返回成员属性的值 
echo "姓名:".$p1->name."<br>"; 
echo "性别:".$p1->sex."<br>"; 
echo "年龄:".$p1->age."<br>"; 
?> 

 

__get __set

原文:http://www.cnblogs.com/isuben/p/5569332.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!