call_user_func、call_user_func_array的用法

来源:互联网 发布:js c标签的if else 编辑:程序博客网 时间:2024/05/22 13:05
http://www.php.net/manual/zh/language.types.callable.php<?php    class a{    static function b($str){    echo $str;    }    }    class aa extends a{    static function aaa($str){    echo $str;    }     }    function c($str){    echo $str;    }    function d($str1,$str2){    echo $str1.'&'.$str2;    }    class e{    static function f($str1,$str2){    echo $str1.'&'.$str2;    }    }    call_user_func(array('a','b'),'a->b');//输出a->b    call_user_func('a::b','a::b->bb');//a::b->bb    call_user_func(array('aa','parent::b'),'aa->a->b->bb');//aa->a->b->bb    call_user_func('c','c->c');//输出c->c    call_user_func_array('d',array('d->d1','d->d2'));//d->d1&d->d2    call_user_func_array(array('e','f'),array('e->f->f1','e->f->f2'));//e->f->f1&e->f->f2?>

mixed call_user_func ( callable $callback [, mixed $parameter [, mixed $... ]] )
    第一个参数 callback 是被调用的回调函数,其余参数是回调函数的参数。
    1、回调函数的参数是多个时(数组)使用call_user_func_array();否则使用call_user_func_aray().
    2、调用某个类中的函数时 call_user_func() 或 call_user_func_array() 的第一个参数使用数组array('类名','方法') 或 使用字符串 类名::静态方法
0 0
原创粉丝点击