如:
我现在有三个方法
立即学习“PHP免费学习笔记(深入)”;
免费 盛世企业网站管理系统(SnSee)系统完全免费使用,无任何功能模块使用限制,在使用过程中如遇到相关问题可以去官方论坛参与讨论。开源 系统Web代码完全开源,在您使用过程中可以根据自已实际情况加以调整或修改,完全可以满足您的需求。强大且灵活 独创的多语言功能,可以直接在后台自由设定语言版本,其语言版本不限数量,可根据自已需要进行任意设置;系统各模块可在后台自由设置及开启;强大且适用的后台管理支
0
foo($a,$b=null) boo($a=array(),$b="") Roo($a)
现在我只需要传递方法名称和参数列表就能直接调用方法。
希望是可以这样(伪代码):
function run_function($fun_name,$paras)
{
{$fun_name}(....//这里应该怎么写呢?);
}
自己找到正确答案了,谢谢下面两个回复的,但真不是我需要的答案。现贴出解决方案:
$handler = array( 'test', 'test3');
$params = array(
array(1,2,3,4),
1
);
if($params == null)
{
call_user_func($handler);
}
if (is_callable($handler) )
{
call_user_func_array( $handler , $params );
}
class test
{
function test1($arr,$arr1)
{
var_dump(array_merge($arr,$arr1));
}
function test2()
{
echo 123;
}
function test3($arr,$a)
{
var_dump($arr);
var_dump($a);
}
}如:
我现在有三个方法
立即学习“PHP免费学习笔记(深入)”;
foo($a,$b=null) boo($a=array(),$b="") Roo($a)
现在我只需要传递方法名称和参数列表就能直接调用方法。
希望是可以这样(伪代码):
function run_function($fun_name,$paras)
{
{$fun_name}(....//这里应该怎么写呢?);
}
自己找到正确答案了,谢谢下面两个回复的,但真不是我需要的答案。现贴出解决方案:
$handler = array( 'test', 'test3');
$params = array(
array(1,2,3,4),
1
);
if($params == null)
{
call_user_func($handler);
}
if (is_callable($handler) )
{
call_user_func_array( $handler , $params );
}
class test
{
function test1($arr,$arr1)
{
var_dump(array_merge($arr,$arr1));
}
function test2()
{
echo 123;
}
function test3($arr,$a)
{
var_dump($arr);
var_dump($a);
}
}
http://www.php.net/manual/zh/function.func-get-args.php
function run_function($fun_name)
{
if(function_exists($fun_name))
{
$num = func_num_args();
$args = func_get_args();
array_shift($args);
return $num==1 ? call_user_func($fun_name) : call_user_func_array($fun_name,$args);
}
trigger_error('Call to undefined function ' . $fun_name, E_USER_ERROR);
}
//使用
run_function('foo', $a, $b);
run_function('boo', $a, $b);
run_function('Roo', $a);
被忽略的回答可以实现阿 真是醉了
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号