php中鈎子函數&實現


首先對鈎子函數不理解的請看萬一的博客<使用鈎子函數>http://www.cnblogs.com/del/archive/2008/02/25/1080825.html

正式開始......

假如有這么一段程序:

function fun(){
fun1();
fun2();
}

首先程序執行完fun1()之后執行fun2()然后fun()結束。

但是,假如我們想對函數做一些變化。比如說,fun是一個解析函數,我們希望后期可以提供豐富的解析函數,而究竟用哪個函數解析,我們希望在配置文件中配置。這個時候就可以發揮鈎子的力量了。

我們可以在function fun(){}中加入一個掛鈎點H,然后再執行H這個函數之前,將鈎子函數配置好,我么就可以根據需要來解析了。

例如:

$h=config_item("parser_fun") ;//從配置文件中獲得相應的配置信息
function fun($data){
global $h;
return $h();
}

除此意外,PHP還可以根據字符串提供自己的類,然后調用類的一個方法,傳遞某些參數,這些就為PHP程序的編寫,以及后期的維護擴展奠定了,相當堅實的基礎。
類的實現方法,大致如下:

$c=get_class_name(); //獲得類的名字
$m=get_method_name(); //獲得方法的名字
$k=$c->$m(); //執行類的某一個方法

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM