PHP中将循环值存入数组有五种方法:一、array_push追加;二、$result[] = $value直接赋值;三、预定义长度按索引赋值;四、array_map批量处理;五、foreach构建关联数组。

如果您在PHP中需要将循环过程中生成的值依次保存到数组中,则可以通过在循环体内动态追加元素的方式实现。以下是几种常用的操作方法:
一、使用array_push函数向数组添加元素
该方法利用内置函数array_push将每次循环产生的值推入目标数组末尾,适用于需要明确控制插入顺序且不关心键名的场景。
1、初始化一个空数组,例如 $result = [];
2、在for或foreach循环内部,调用array_push($result, $value);
立即学习“PHP免费学习笔记(深入)”;
3、确保$value为当前迭代中需要保存的实际数据,如变量、表达式结果或函数返回值。
二、使用方括号语法直接赋值
该方式通过$result[] = $value语法自动为新元素分配递增的数字索引,执行效率略高于array_push,是PHP中最简洁的追加写法。
1、声明空数组,例如 $result = [];
2、在while或for循环中,每轮迭代执行$result[] = $current_value;
3、$current_value可以是数组元素、计算结果或数据库查询返回的单个字段值。
三、预先定义数组长度并按索引赋值
当已知循环次数且希望严格控制数组结构时,可先用array_fill或range创建带指定键的数组,再在循环中按索引更新对应位置的值。
1、使用range(0, $count - 1)生成键序列,或用array_fill(0, $count, null)初始化固定长度数组;
2、在for循环中,以$i为索引,执行$result[$i] = $computed_value;
3、确保$i从0开始且不超过预设最大索引,避免产生未定义偏移警告。
四、使用array_map配合匿名函数批量处理
若原始数据已存在于一个数组中,可通过array_map将转换逻辑应用到每个元素,并直接返回新数组,无需显式编写循环结构。
1、准备源数组,例如 $source = [1, 2, 3, 4];
2、调用array_map(function($item) { return $item * 2; }, $source);
3、返回的新数组即为所有循环处理结果的集合,原数组不会被修改。
五、在foreach中构建关联数组
当需要保留原始键名或自定义键名时,可在foreach中使用$key => $value语法,将键与处理后的值组合成关联数组元素。
1、初始化空数组 $assoc_result = [];
2、遍历源数组,使用foreach ($data as $key => $val) { $assoc_result[$key] = strtoupper($val); };
3、最终得到的数组中,每个键都对应原始数据中的键,值为经处理后的内容。











