不明白為什么要使用 call_user_func()看了官網(wǎng)http://www.php.net/manual/zh/...,http://php.net/manual/zh/func...
也還是不明白,只是說處理回調(diào)函數(shù),網(wǎng)上多數(shù)是說call_user_func_array 的用法,多數(shù)用來動態(tài)傳參數(shù),但是call_user_func不處理數(shù)組參數(shù),那么他的意義是什么呢?
看了一下樣例:
<?php
class myclass {
static function say_hello()
{
echo "Hello!\n";
}
}
$classname = "myclass";
call_user_func(array($classname, 'say_hello'));
call_user_func($classname .'::say_hello'); // As of 5.2.3
輸出Hello!Hello!
為什么命名可以用myclass::say_hello,但要偏偏使用call_user_func呢?也沒看到處理回調(diào)參數(shù)的東西?
以上是我的不理解的地方,請各位幫忙解惑,謝謝。
1 回答

jeck貓
TA貢獻(xiàn)1909條經(jīng)驗 獲得超7個贊
自己用當(dāng)然可以用具名函數(shù)和方法。如果你的函數(shù)或者方法需要接收一個回調(diào)函數(shù)作為參數(shù)呢?
function test(callable $callback) {
call_user_func($callback,'參數(shù)1','參數(shù)2');
}
- 1 回答
- 0 關(guān)注
- 384 瀏覽
添加回答
舉報
0/150
提交
取消