在你引进某个类文件的情况下,想调用这个类文件的时call_user_func_array函数,下面根据参数不同,贴两个实例:
PHP代码
<?php
$func = function($arg1, $arg2) {
return $arg1 * $arg2;
};
var_dump(call_user_func_array($func, array(2, 4))); /* As of PHP 5.0 */
?>
将输出:
int(8) [1]
PHP代码
<?
Class ClassA
{
function bc($b, $c) {
$bc = $b + $c;
echo $bc;
}
}
call_user_func_array(array('ClassA','bc'), array("111", "222"));
//显示 333
?>
第一个参数:类名,函数。第二个函数:传入参数
或许你会这样问:call_user_func_array这个函数在什么情况下用?当调用某个函数时,直接new调用就行了,不是多此一举吗?
call_user_func_array和new 类名不同的区别在于:all_user_func_array的第一个参数为array('类名','方法名')的话,系统会自动为该类创建对象来直行方法,但是却不会执行__construct构造方法,相当于调用静态方法 类名::函数名(参数)调用,而new 类名的时候,会先执行构造函数。
分享到:
相关推荐
call_user_func_array — 调用回调函数,并把一个数组参数作为回调函数的参数 mixed call_user_func_array ( callable $callback , array $param_arr ) 把第一个参数作为回调函数(callback)调用,把参数数组作...
call_user_func函数类似于一种特别的调用函数的方法,使用方法如下: 复制代码 代码如下: function a($b,$c) { echo $b; echo $c; } call_user_func(‘a’, “111”,”222″); call_user_func(‘a’, “333”,”444...
}//调用test方法,array(“asp”, ‘php’)对应相应的参数call_user_func_array(‘test’, array(“asp”, ‘php’)); 二、通过类调用类中的方法复制代码 代码如下:class test2{function phpSay($a, $b) {echo ‘测试...
本文实例讲述了PHP call_user_func和call_user_func_array函数的简单理解与应用。分享给大家供大家参考,具体如下: call_user_func():调用一个回调函数处理字符串, 可以用匿名函数,可以用有名函数,可以传递类的...
call_user_func函数是当需要动态调用函数时,才使用的,这个函数有两种用法:第一种是调用孤独的函数:复制代码 代码如下:<?phpfunction funa($b,$c){ echo $b; echo $c;}call_user_func(‘funa’, “111”,”...
或 : $ result = call_user_func_array ( $ callable ); 这具有简单性的巨大优势,但是不幸的是,它比直接调用慢。 由于每个Callable类型将需要它自己的调用方法,因此该衬垫还隐藏了一些复杂性。 如果我们在哪里...
call_user_func_array (PHP 4 >= 4.0.4, PHP 5) call_user_func_array — Call a user function given with an array of parameters Description mixed call_user_func_array ( callback function, array param_arr ...
php代码-call_user_func and call_user_func_array
本文实例讲述了php中call_user_func函数使用注意事项。分享给大家供大家参考。具体分析如下: call_user_func函数的注意事项:parse error: syntax error, unexpected t_list, expecting t_string in,今天在使用这个...
call_user_func函数类似于一种特别的调用函数的方法,使用方法如下: <?php function nowamagic($a,$b) { echo $a; echo $b; } call_user_func('nowamagic', "",""); call_user_func('nowamagic', "",""); //...
其中parameter下有这样一句话: Note: Note that the parameters for call_user_func() are not passed by reference. 简单地翻译一下,是说这个函数的参数是不能依靠引用来传递的。 还有一个例子: 复制代码 代码...