我有一系列功能:
$functions = array(
"sum" => function($v1, $v2) {
$s = $v1 + $v2;
return $s;
}
);
现在,我对如何调用这个特定功能感到困惑 -
echo $functions["sum"](1,2); //suppose to echo 3
不起作用。
答案 0 :(得分:1)
这样做
<?php
$functions = array(
"sum" => function($v1, $v2) {
$s = $v1 + $v2;
return $s;
});
echo $functions['sum'](1,2); //"prints" 3
答案 1 :(得分:1)
OP刚刚加入了缺失的分号,这是一个明显的问题。
OP在5分钟宽限期内使用添加的分号编辑了问题,因此编辑中未显示原始缺失的分号。 (我知道我所看到的)
错误是
末尾缺少的分号echo $functions["sum"](1,2)
制作:
echo $functions["sum"](1,2);
我测试输出为3
经过全面测试和运行的代码,输出3
- 在回显的末尾添加缺少的分号。
<?php
$functions = array(
"sum" => function($v1, $v2) {
$s = $v1 + $v2;
return $s;
}
);
echo $functions["sum"](1,2); // echos 3
这个打印10
<?php
$functions = array(
"sum" => function($v1, $v2) {
$s = $v1 + $v2;
return $s;
}
);
echo $functions["sum"](1,9); // prints 10
乘法方法使用2
和9
输出18
<?php
$functions = array(
"sum" => function($v1, $v2) {
$s = $v1 * $v2;
return $s;
}
);
echo $functions["sum"](2,9); // echos 18
答案 2 :(得分:0)
在这里工作正常:
php > $funcs = array('sum' => function($v1, $v2) { return $v1 + $v2; });
php > echo $funcs['sum'](1,2);
3
php > echo $funcs['sum']('foo','bar');
0