从变量调用函数

时间:2012-08-29 16:10:33

标签: php

$scripts[0] = 'Say Hello';
$scripts[1] = 'Dont Say Hello';
$scripts[2] = 'Welcome';

$function_name = str_replace(' ', '_', $scripts[0]);   //Name of the function "Say_Hello"

echo $function_name('Jolly');   // Should echo "Hello Jolly"

我有一个巨大的数组,其中包含与函数相关的名称。通常情况下,如果我们要调用函数 Say_Hello(),我们会这样: Say_Hello('Jolly')。但在上面我的例子中,函数的名称存储在一个变量中,所以我该如何调用呢?

由于

1 个答案:

答案 0 :(得分:1)

查看PHP函数call_user_func

call_user_func - 调用第一个参数

给出的回调

示例:

<?php
error_reporting(E_ALL);
function increment(&$var)
{
    $var++;
}

$a = 0;
call_user_func('increment', $a);
echo $a."\n";

call_user_func_array('increment', array(&$a)); // You can use this instead before PHP 5.3
echo $a."\n";
?>