php魔术方法__SET __GET
__SET 设置一个不可访问的属性的时候 调用_set方法
__GET 获取一个不可访问的属性的时候 调用_get 方法
<?php class stu{ private $a; private $b = 0; public $c; public $d = 0; //这里的 private 可以用 protected public 替代 private function __get($name) { return 123; } //这里的 private 也可以用 protected public 替代 private function __set($name, $value) { echo "This is set function"; } } $s = new stu(); echo "<pre>"; var_dump($s->a); //output: 123 var_dump($s->b); //output: 123 var_dump($s->c); //output: null var_dump($s->d); //output: 0 var_dump($s->e); //output: 123 $s->a = 3; //output: This is set function echo "<br>"; $s->c = 3; //no output echo "<br>"; $s->f = 3; //output: This is set function
看结果