我正在尝试使用此代码:
$arr = [
function ($a) {
return $a + $a;
},
function ($b) {
return $b * $b;
},
function ($c,$cc) {
return $c % $cc - $c;
},
function ($d) {
return $d + 4 / $d;
}
];
如何将参数传递给此函数? 我已经学习了这个没有参数的函数的语句。例如: function(){echo' somethings&#39 ;;这意味着数组中的这个函数没有传入的参数。
$test = rand (0,1);
echo $myarr[$test]();
另外
我可以在上面的代码片段中使用其他语句更改(rand)语句吗?
答案 0 :(得分:0)
您可以执行以下操作:
你的阵列:
$arr = [
function ($a) {
return $a + $a;
},
function ($b) {
return $b * $b;
},
function ($c,$cc) {
return $c % $cc - $c;
},
function ($d) {
return $d + 4 / $d;
}
];
你的兰特
$test = rand(0,1);
----注意----
您可以将rand()更改为任何其他语句,前提是它是$ arr数组的现有索引。为了知道$ test值是否是$ arr数组中存在的索引,你可以做
if (isset($arr[$test])) {}
----结束说明---
调用函数
$returnedValue = call_user_func($arr[$test], 10);
echo $returnedValue;