PHP 魔术方法 __isset __unset (三),__isset__unset
程序员文章站
2022-05-19 18:32:47
...
PHP 魔术方法 __isset __unset (三),__isset__unset
慢慢长寻夜,明月高空挂
__isset() - 在对类中属性或者非类中属性使用isset()方法的时候如果没有或者非公有属性,则自动执行__isset()的方法
__unset() - 在对类中属性或者非类中属性使用unset()方法的时候如果没有或者非公有属性,则自动执行__unset()的方法
public = 'pub'; $this->protected = 'pro'; $this->private = 'pri'; } public function __isset($var){ echo '这里通过__isset()方法查看属性名为 '.$var."\n"; } public function __unset($var){ echo '这里通过__unset()方法要销毁属性名为 '.$var."\n"; } } $exa = new Example; echo ''; var_dump(isset($exa->public)); echo "\n"; var_dump(isset($exa->protected)); echo "\n"; var_dump(isset($exa->private)); echo "\n"; var_dump(isset($exa->noVar)); echo "\n"; echo '
'; unset($exa->public); var_dump($exa); echo "\n"; unset($exa->protected); echo "\n"; unset($exa->private); echo "\n"; unset($exa->noVar); echo "\n";结果如下:
bool(true) 这里通过__isset()方法查看属性名为 protected bool(false) 这里通过__isset()方法查看属性名为 private bool(false) 这里通过__isset()方法查看属性名为 noVar bool(false) ------------------------------------------------------------------------------ object(Example)#1 (2) { ["protected:protected"]=> string(3) "pro" ["private:private"]=> string(3) "pri" } 这里通过__unset()方法要销毁属性名为 protected 这里通过__unset()方法要销毁属性名为 private 这里通过__unset()方法要销毁属性名为 noVar
推荐阅读
-
PHP魔术方法__ISSET、__UNSET使用实例
-
PHP 特殊方法 set()、get()、isset() 与 unset()
-
PHP魔术方法__ISSET、__UNSET使用实例
-
php session删除会话,有三个方法 unset(); session_destroy();
-
php (十四) 面向对象 魔术方法 __set()、__get()、__isset() 与 __unset()
-
php (十四) 面向对象 魔术方法 __set()、__get()、__isset() 与 __unset()
-
[面向对象] 魔术方法 __set, __get, __unset, __isset
-
PHP 魔术方法 __isset __unset (三),__isset__unset
-
PHP 魔术方法 __isset __unset (三),__isset__unset
-
PHP5面向对象详解 - (10) __set() __get() __isset() __unset()四个方法_PHP教程