六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

PHP5.0對象模型探索之重載

[摘要]PHP4中已經有了重載的語法來建立對于外部對象模型的映射,就像Java和COM那樣. PHP5帶來了強大的面向對象重載,允許程序員建立自定義的行為來訪問屬性和調用方法。   重載可以通過__get, __set, and __call幾個特殊方法來進行. 當Zend引擎試圖訪問一個成員并沒有找到...
PHP4中已經有了重載的語法來建立對于外部對象模型的映射,就像Java和COM那樣. PHP5帶來了強大的面向對象重載,允許程序員建立自定義的行為來訪問屬性和調用方法。 

  重載可以通過__get, __set, and __call幾個特殊方法來進行. 當Zend引擎試圖訪問一個成員并沒有找到時,PHP將會調用這些方法. 

  在下面的例子中,__get和__set代替所有對屬性變量數組的訪問. 如果必要,你可以實現任何類型你想要的過濾. 例如,腳本可以禁止設置屬性值, 在開始時用一定的前綴或包含一定類型的值. 

  __call方法說明了你如何調用未經定義的方法. 你調用未定義方法時,方法名和方法接收的參數將會傳給__call方法, PHP傳遞__call的值返回給未定義的方法. 

  Listing1 User-level overloading 

class Overloader 

 private $properties = array(); 

 function __get($property_name) 
 { 
  if(isset($this->properties[$property_name])) 
  { 
   return($this->properties[$property_name]); 
  } 
  else 
  { 
   return(NULL); 
  } 
 } 

 function __set($property_name, $value) 
 { 
  $this->properties[$property_name] = $value; 
 } 

 function __call($function_name, $args) 
 { 
  print("Invoking $function_name() n"); 
  print("Arguments: "); 
  print_r($args); 

  return(TRUE); 
 } 

$o = new Overloader(); 

//invoke __set() 給一個不存在的屬性變量賦值,激活__set() 
$o->dynaProp = "Dynamic Content"; 

//invoke __get() 激活__get() 
print($o->dynaProp . "n"); 

//invoke __call() 激活__call() 
$o->dynaMethod("Leon", "Zeev"); 
?> 



主站蜘蛛池模板: 综合热久久| 亚洲欧美日韩在线精品一区二区 | 一级做a爱片特黄在线观看 一级做a爱片久久蜜桃 | 日本www色视频 | 一二三四免费影院 | 天天摸夜夜添狠狠添2018 | 亚洲国产一成人久久精品 | 小草青青免费影视观看 | 亚洲国产精品久久久久666 | 日韩色网站| 日本欧美一区二区三区视频麻豆 | 性做久久久久久久 | 日本欧美国产 | 香蕉久草| 天天射天天搞 | 午夜激爽毛片在线看 | 亚洲 欧美 国产另类首页 | 欧美亚洲国产精品第一页 | 亚洲日本免费 | 五月天堂婷婷 | 日本不卡免费新一区二区三区 | 亚洲精品在线免费观看视频 | 欧美亚洲综合视频 | 日本免费观看视频 | 伊人免费| 亚洲欧美中日韩中文字幕 | 亚洲国产精品一区二区久久hs | 午夜精品久久久久久久第一页 | 青青草免费在线视频 | 亚洲欧美日韩成人网 | 青春草在线观看 | 天天色天天操综合网 | 亚洲区欧美 | 五月激情五月婷婷 | 五月婷婷深深爱 | 一级毛片网| 亚洲精品亚洲人成在线播放 | 亚洲成人mv| 午夜久久久精品 | 午夜视频免费看 | 在线亚洲精品国产成人二区 |