php中怎么把数据存入数组中_php数据存入数组操作与写入技巧

PHP中存入数组数据有五种方式:一、方括号追加;二、指定键名赋值;三、array_push批量追加;四、array_merge合并数组;五、foreach循环写入。

在PHP中,将数据存入数组是基础且高频的操作,涉及索引数组、关联数组以及多维数组等多种场景。以下是几种常见且实用的数据存入方式:

一、使用方括号语法直接追加元素

该方法适用于向索引数组末尾添加新元素,PHP自动分配下一个整数键。

1、声明一个空数组:$arr = [];

2、使用空方括号追加值:$arr[] = 'apple';

3、继续追加其他值:$arr[] = 'banana'; $arr[] = 42;

4、执行后数组等价于:['apple', 'banana', 42]

二、通过指定键名显式赋值

该方式适用于索引数组(用数字键)和关联数组(用字符串键),可精确控制键与值的对应关系。

1、创建空数组:$data = [];

2、为字符串键赋值:$data['name'] = 'Alice';

3、为数字键赋值:$data[0] = 'admin';

4、为嵌套键赋值:$data['profile']['age'] = 28;

5、最终结构示例:['name' => 'Alice', 0 => 'admin', 'profile' => ['age' => 28]]

三、使用array_push函数批量追加

array_push用于向数组末尾插入一个或多个元素,返回新数组长度,适用于需动态扩展且需获取插入数量的场景。

1、初始化数组:$list = [1, 2];

2、单个值追加:array_push($list, 3);

3、多个值追加:array_push($list, 4, 5, 'done');

4、执行后数组变为:[1, 2, 3, 4, 5, 'done']

四、使用array_merge合并数组实现数据写入

当已有数组需合并新数据(尤其是关联数组键不冲突时),array_merge可安全叠加键值对,原数组键不会被覆盖(除非新数组含同名键)。

1、定义原始数组:$base = ['id' => 1001, 'type' => 'user'];

2、准备新增数据:$new = ['status' => 'active', 'created' => date('Y-m-d')];

3、执行合并:$result = array_merge($base, $new);

4、结果包含全部键值:['id' => 1001, 'type' => 'user', 'status' => 'active', 'created' => '2025-06-15']

五、利用foreach循环批量写入数据

适用于从外部数据源(如数据库查询结果、表单提交数组)逐条提取并构造新数组结构。

1、假设有原始数据集:$source = [['a' => 1], ['a' => 2], ['a' => 3]];

2、初始化目标数组:$target = [];

3、遍历并提取字段:foreach ($source as $item) { $target[] = $item['a']; }

4、输出结果为:[1, 2, 3]