簡介:PHP中處理函數的函數(Function Handling Functions),以下本人只對幾個比較常用的函數做詳細說明。
call_user_func — 呼叫一個存在的函數
call_user_func_array — 呼叫一個函數並以數組形式的傳參
//以上兩個函數比較相似,只是傳入參數的方式不同而已。
function phpha_com($a, $b){
echo $a + $b;
}
call_user_func('phpha_com', 1, 2); // 3
call_user_func_array('array_1, 2) ; // 3
//另外若呼叫類別中的方法,則以陣列形式:
//天涯PHP部落格 http://blog.phpha.com
class phpha{
public function phpha_com($a, $b) {
echo $a + $b;
}
}
call_user_func(array('phpha', 'phpha_com'), 1, 2); // 3
call_user_func_array(array('phpha), ' php_ycom (1, 2)); // 3
create_function — 建立匿名函數
func_get_arg — 取得函數中某個參數的值
func_get_args — 取得函數的所有參數並組成函數的數字參數個數
// phpha_func.php
function phpha($a, $bb){
function phpha($a, $b)
// test.php
if( ! function_exists('phpha')){
include 'phpha_func.php';
}
phpha(1, 2); // 3
get_defined_functions — 可以取得所有的PHP函數和自訂的函數
var_dump(get_defined_functions(3));
.頁面載入完成後運行的函數
register_shutdown_function 執行機制是:PHP把要呼叫的函數調入記憶體。當頁面所有PHP語句都執行完成時,再呼叫此 函數。請注意,在這個時候從內存中調用,不是從PHP頁面中調用,所以上面的例子不能使用相對路徑,因為PHP已經當原來的頁面不存在了。就沒有什麼相對路徑可言。
注意:register_shutdown_function 是指在執行完所有PHP語句後再呼叫函數,不要理解成客戶端關閉流瀏覽器頁面時呼叫函數。
天涯PHP部落格http://blog.phpha.com
可以這樣理解呼叫條件:
1、當頁面被使用者強制停止時
2、當程式碼運作逾時時
3、當PHP程式碼執行完成時
register_tick_function — 註冊一個按要求調用的函數
unregister_tick_function — 取消一個按要求調用的函數
以上就是摘自PHP手冊[4] – Function Handling Functions的內容,更多相關內容請關注PHP中文網(www. php.cn)!