如何在带参数的函数中调用变量函数?

时间:2017-01-23 06:11:40

标签: php function

我试图在函数中调用变量函数,但它没有按预期工作。

这是我的代码:

$arg1 = "Beef";
$arg2 = "Potatoes";

$string1 = "Tomatoes";
$string2 = "Onions";

function func1 ($arg1, $arg2){
    echo $arg1.' '.$arg2;
}

$var1 = "func1";

function func2($string1, $string2, $var1) {
    echo $string1." & ".$string2;
    $var1($arg1, $arg2);
}

func2($string1, $string2, $var1);

当我致电func2时,它只会回复"西红柿&葱"全球不是$arg1$arg2吗?为什么在函数func2中没有看到它们?如何在$var1内调用func2及其参数?

1 个答案:

答案 0 :(得分:3)

由于范围可变,Func1期待你传递给它的2个参数。

更改

function func2($string1, $string2, $var1) {
    echo $string1." & ".$string2;
    $var1($arg1, $arg2);
}

function func2($string1, $string2, $var1) {
    Global $arg1, $arg2;
    echo $string1." & ".$string2;
    $var1($arg1, $arg2);
}

http://php.net/manual/en/language.variables.scope.php