1.__set($key,$value)

给无法访问属性赋值的时候自动执行
image.png
name属性是private 不能在外部调用 当他调用了就会报错 但是用__set 就可以解决这个问题。

2.__get()

获取无法访问属性赋值的时候自动执行
image.png
private属性的值 是直接输出不了
这样就可以了

  1. <?php
  2. class people {
  3. private $name;
  4. public function __set($key,$value){
  5. $this->$key=$value;
  6. }
  7. public function __get($key){
  8. return $this->$key;
  9. }
  10. }
  11. $stu=new people;
  12. $stu->name='0ne';
  13. echo $stu->name;

3.__isset()

判断无法访问属性赋值的时候自动执行

__isset($key){
return isset($this->$key)
}

4.__unset()

销毁无法访问属性的时候自动执行

__unset($key){
return unset($this->$key)
}