php魔術方法__unset()在調(diào)用unset()函數(shù)銷毀一個不能訪問的屬性時被調(diào)用;它接收一個參數(shù),表述屬性的名字。
推薦:《PHP視頻教程》
屬性重載:當訪問一個不存在或者權限不夠的屬性的時候,能夠觸發(fā)一系列的魔術方法,就叫做屬性重載
__unset()在調(diào)用 unset()函數(shù)銷毀一個不能訪問的屬性時會被調(diào)用,它接收一個參數(shù),表述屬性的名字。
<?php //屬性重載 class Person{ //屬性 public $name; private $age; //構造方法 public function __construct($name,$age) { $this->name = $name; $this->age = $age; } //增加__unset方法,沒有返回值 public function __unset($name){ $allow = array('age'); //判斷 if(in_array($name,$allow)){ //如果允許刪除,就幫助其刪除 unset($this->$name); } } } echo '<pre>'; //實例化 $person = new Person('方智',19); var_dump($person); //刪除屬性 //unset($person->name); //公有屬性可以直接被unset掉 //var_dump($person); //unset私有屬性 unset($person->age); var_dump($person); unset($person->tail);