解析php中如何调用用户自定义函数
添加时间:2013-8-7 点击量:
以下是对php中调用用户自定义函数的办法进行了具体的解析介绍,须要的伴侣可以过来参考下
例子:
call_user_func函数类似于一种特此外调用函数的办法,应用办法如下:
<?php
function a(¥b,¥c)
{
echo ¥b;
echo ¥c;
}
call_user_func(a, 111,222);
call_user_func(a, 333,444);
//显示 111 222 333 444
?>
调用类内部的办法斗劲新鲜,居然用的是array,不知道开辟者是如何推敲的,当然省去了new,也是满有新意的:
<?php
class a {
function b(¥c)
{
echo ¥c;
}
}
call_user_func(array(a, b),111);
//显示 111
?>
call_user_func_array函数和call_user_func很类似,只不过是换了一种体式格式传递了参数,让参数的布局更清楚:
<?php
//call_user_func_array
//by www.jbxue.com
function a(¥b, ¥c)
{
echo ¥b;
echo ¥c;
}
call_user_func_array(a, array(111, 222));
//显示 111 222
?>
call_user_func_array函数也可以调用类内部的办法的
<?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函数和call_user_func_array函数都支撑引用,这让他们和通俗的函数调用更趋于功能一致:
<?php
//call_user_func
//by www.jbxue.com
function a(¥b)
{
¥b++;
}
¥c = 0;
call_user_func(a, ¥c);
echo ¥c;//显示 1
call_user_func_array(a, array(¥c));
echo ¥c;//显示 2
?>
另:call_user_func函数和call_user_func_array函数都支撑引用。
<?php
function increment(&¥var)
{
¥var++;
}
¥a = 0;
call_user_func(increment, ¥a);
echo ¥a; // 0
call_user_func_array(increment, array(&¥a)); // You can use this instead
echo ¥a; // 1
?>