PHP 函數(shù)call_user_func和call_user_func_array用法詳解
call_user_func函數(shù)是當(dāng)需要?jiǎng)討B(tài)調(diào)用函數(shù)時(shí),才使用的,這個(gè)函數(shù)有兩種用法:
第一種是調(diào)用孤獨(dú)的函數(shù):
function funa($b,$c)
{
echo $b;
echo $c;
}
call_user_func('funa', "111","222");
call_user_func('funa', "333","444");
//顯示 111 222 333 444
//大家有沒(méi)有發(fā)現(xiàn),這個(gè)用法有點(diǎn)像javascript中的call方法,嘿嘿
?>
第二種是調(diào)用類內(nèi)部的函數(shù):
class a {
function b()
{
$args = func_get_args();
$num = func_num_args();
print_r($args);
echo $num;
}
}
call_user_func(array("a", "b"),"111","222");
?>
上面這個(gè)例子,自己運(yùn)行一下看看結(jié)果是什么吧~嘿嘿~提示一下func_get_args()函數(shù)是獲取傳入到函數(shù)中的參數(shù),返回一個(gè)數(shù)組,func_num_args()函數(shù)獲取傳入函數(shù)中的參數(shù)的個(gè)數(shù)。
下面再來(lái)看看call_user_func_array函數(shù)
這個(gè)函數(shù)也是當(dāng)需要?jiǎng)討B(tài)調(diào)用函數(shù)時(shí)用到的,它的用法和call_user_func函數(shù)比較像,只是參數(shù)傳入的是數(shù)組。
function a($b, $c)
{
echo $b;
echo $c;
}
call_user_func_array('a', array("111", "222"));
//顯示 111 222
?>
call_user_func_array函數(shù)也可以調(diào)用類內(nèi)部的方法的
Class ClassA
{
function bc($b, $c) {
$bc = $b + $c;
echo $bc;
}
}
call_user_func_array(array(‘ClassA','bc'), array(“111″, “222″));
//顯示 333
?>
下面再看一個(gè)動(dòng)態(tài)調(diào)用函數(shù)的例子:
function otest1 ($a)
{
echo( '一個(gè)參數(shù)' );
}
function otest2 ( $a, $b)
{
echo( '二個(gè)參數(shù)' );
}
function otest3 ( $a ,$b,$c)
{
echo( '三個(gè)啦' );
}
function otest (){
$args = func_get_args();
$num = func_num_args();
call_user_func_array( 'otest'.$num, $args );
}
otest("11");
otest("11","22");
otest("11","22","33");
?>
- php自定義函數(shù)call_user_func和call_user_func_array詳解
- PHP中call_user_func_array回調(diào)函數(shù)的用法示例
- PHP中call_user_func_array()函數(shù)的用法演示
- php中call_user_func函數(shù)使用注意事項(xiàng)
- 淺析PHP中call user func()函數(shù)及如何使用call user func調(diào)用自定義函數(shù)
- PHP回調(diào)函數(shù)概念與用法實(shí)例分析
- PHP 的異常處理、錯(cuò)誤的拋出及回調(diào)函數(shù)等面向?qū)ο蟮腻e(cuò)誤處理方法
- PHP回調(diào)函數(shù)及匿名函數(shù)概念與用法詳解
- PHP call_user_func和call_user_func_array函數(shù)的簡(jiǎn)單理解與應(yīng)用分析
相關(guān)文章
php實(shí)現(xiàn)的替換敏感字符串類實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)的替換敏感字符串類,包括了常見(jiàn)的非法字符串檢測(cè)、白名單、黑名單及字符替換等功能,非常實(shí)用,需要的朋友可以參考下2014-09-09
php實(shí)現(xiàn)的返回?cái)?shù)據(jù)格式化類實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)的返回?cái)?shù)據(jù)格式化類及其應(yīng)用實(shí)例,包括針對(duì)XML、JSON等的格式化,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-09-09
如何用PHP websocket實(shí)現(xiàn)網(wǎng)頁(yè)實(shí)時(shí)聊天
websocket作為HTML5里一個(gè)新的特性一直很受人關(guān)注,因?yàn)樗娴姆浅??,打破了http“請(qǐng)求-響應(yīng)”的常規(guī)思維,實(shí)現(xiàn)了服務(wù)器向客戶端主動(dòng)推送消息,本文介紹如何使用PHP和JS應(yīng)用websocket實(shí)現(xiàn)一個(gè)網(wǎng)頁(yè)實(shí)時(shí)聊天室。2021-05-05
PHP實(shí)現(xiàn)大數(shù)(浮點(diǎn)數(shù))取余的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)大數(shù)(浮點(diǎn)數(shù))取余的方法,結(jié)合實(shí)例形式分析了php數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-02-02

