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

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

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"); 
?> 



主站蜘蛛池模板: 四虎成年永久免费网站 | 亚洲ol | 人人做天天爱夜夜爽中字 | 伊人青| 亚洲欧美日韩国产 | 午夜影院福利 | 欧美在线看片a免费观看 | 永久免费mv网站入口 | 特色毛片 | 天天色综网| 手机看片精品高清国产日韩 | 欧美性大战久久久久久久 | 亚洲视频自拍 | 四虎海外在线永久免费看 | 日韩黄色成人 | 三级黄色片免费 | 伊人免费在线观看高清版 | 欧美亚洲国产精品久久高清 | 四虎国产精品永免费 | 亚洲婷婷影院 | 亚洲一色| 亚洲国产日产无码精品 | 五月六月丁香 | 亚洲一区在线免费观看 | 午夜一级精品免费毛片 | 亚洲免费视频观看 | 亚洲成a人v欧美综合天堂麻豆 | 中文字幕一区在线观看 | 天天做夜夜操 | 晚上正能量91香蕉 | 婷婷伊人 | 青草伊人网 | 日韩视频不卡 | 亚洲欧美日韩伦中文 | 日本黄页网| 青娱乐国产在线观看 | 午夜网站视频 | 青青青视频在线 | 先锋影音在线资源站大全 | 天堂2018| 天堂在线最新资源 |