大家好,需要 foreach 循环的帮助,我需要创建数组,a用 items:调用[10, 3, 45, 98, 4, 7, 56, 23, 3, 1]。然后使用 for-each 循环将每个项目与 10 相加,并将它们放入一个名为 的新数组中b。
检查下面的代码,它适用于相同的 $a 数组,但如何将它们放入新数组中?
$a = [10, 3, 45, 98, 4, 7, 56, 23, 3, 1];
$b = [];
foreach ($a as &$value) {
$value = 10 + $value;
}
echo $a;
Run Code Online (Sandbox Code Playgroud)
通过对输入数组的所有元素执行相同的操作来生成新数组称为映射,这也可以使用 PHP 中的高阶函数来完成,除非foreach出于某种原因特别需要使用循环。
$b = array_map(function($n) { return $n + 10; }, $a);
Run Code Online (Sandbox Code Playgroud)
或者使用箭头函数(从 PHP 7.4 开始)
$b = array_map(fn($n) => $n + 10, $a);
Run Code Online (Sandbox Code Playgroud)