__set($key,$val) 对类内私有属性赋值
作用:对私有属性的处理
当在类外对类内的私有属性赋值时会自动调用此函数
__get($varName) 读取类内私有属性
作用:虽然可以外部访问,但有限制条件,否则直接public即可,不需要私有化此属性
根据限制条件 开放访问权限
当对象调用类内私有属性时调用此方法
必须有返回值 return $this->$varName
class A{ private $name; private $age; function __set($key,$values){ $this->$key=$values; } function __get($varName){ if(trim($_SESSION['utype'])=='teacher'){ return $this->$varName; }else{ return "保密"; } } } $a=new A(); $a->name="jack";