次のスニペットは一連の入力フィールドを返しますが、$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));
グローバル変数がクールではないことは知っています。これを回避する最善の方法は何ですか?