以下代码片段返回一堆输入字段,但由于$data被定义在闭包内部,所以我无法设置它们的值。
$row = array_map(function($n) {
$name = sprintf('point[%0d]', $n+1);
$value = $data['measurements'][$n];
return form_input($name, $value, "class='input-mini'");
}, range($i*6, $i*6+5));
我知道全局变量并不好。有什么最好的方法可以避免使用它们吗?
function($n) use ($data) {
。该语句是PHP中用于创建闭包函数的语法,其中$n
是闭包函数的参数,而$data
是在闭包函数中使用的外部变量。具体来说,use
关键字可以将一个变量从外部作用域传递到闭包函数内部,以便在闭包函数中使用。 - air4x