PHP中的魔術(shù)方法的觸發(fā)時機
-
__get($name)
-
當調(diào)用一個不可訪問的成員屬性的時候双泪,會自動觸發(fā)排截⊥钟可以利用這個方法來完成對不可調(diào)用的屬性進行調(diào)用晴裹,但是不能設(shè)置值
public class __get($name) { }
?
-
-
__set($name,$lue)
-
當給一個不可訪問的成員屬性賦值的時候,會自動觸發(fā)祝辣√蓿可以利用這個方法完成對不可以訪問的屬性進行賦值
public class __set($name,$lue) { }
?
-
-
__isset($name)
-
當使用isset函數(shù)來判斷一個對象的屬性的時候,如果這個屬性不存在或者不可訪問的時候蝙斜,會觸發(fā)這個方法
public class __isset($name) { }
?
-
-
__call($method,$args)
-
當對象調(diào)用一個不可訪問的成員方法或者不存在的成員方法時會被觸發(fā)
public class __call($method,$args) { }
?
-
-
__callStatic($method,$args)
-
當調(diào)用一個不可訪問的靜態(tài)成員方法或者不存在的靜態(tài)成員方法時會被觸發(fā)
static public class __call($method,$args) { }
?
-
-
__unset
-
當要銷毀不存在的成員屬性或者不可以訪問的成員屬性的時候揍瑟,會被觸發(fā)
public function __unset() { }
?
-
-
__sleep()
-
當用serialize 把對象進行序列化的時候,會被觸發(fā)乍炉。
public function __sleep() { }
?
-
-
__weakup()
-
當用unserialize 把對象進行反序列化的時候绢片,會被觸發(fā)。
public function __wakeup() { }
?
-
-
__toString
-
當 echo 一個對象的時候岛琼,會觸發(fā)
public function __toString() { return '小可愛'; }
?
-