php怎么把数组的值放到一个新数组_PHP提取数组值到新数组

2次阅读

php提取数组所有值的方法有五种:一、array_values()重置键名生成索引数组;二、foreach循环手动追加值;三、array_map()配合匿名函数处理并收集;四、ArrayIterator对象遍历;五、array_column()提取多维数组指定列值。

php怎么把数组的值放到一个新数组_PHP提取数组值到新数组

如果需要从现有数组中提取所有值并放入一个新数组,PHP 提供了多种原生函数和语法方式来实现该操作。以下是几种常用且互不依赖的方法:

一、使用 array_values() 函数

该函数返回原数组中所有值组成的新索引数组,自动重置键名,适用于关联数组或键名混乱的场景。

1、定义原始数组,例如 $arr = [‘a’ => 10, ‘b’ => 20, ‘c’ => 30];

2、调用 array_values($arr),结果为 [10, 20, 30]

立即学习PHP免费学习笔记(深入)”;

3、将返回值赋给新变量,例如 $newArr = array_values($arr);

二、使用 foreach 循环手动提取

通过遍历原数组,逐个将值追加到空数组中,适合需同时过滤或转换值的场景。

1、初始化空数组 $newArr = [];

2、使用 foreach ($arr as $value) { $newArr[] = $value; }

3、循环结束后,$newArr 即为仅含原数组值的新数组。

三、使用 array_map() 配合匿名函数

该方式可对每个值进行处理后再收集,即使不做变换,也能构造新数组。

1、定义匿名函数返回当前值:function($v) { return $v; }

php怎么把数组的值放到一个新数组_PHP提取数组值到新数组

MCP市场

中文MCP工具聚合与分发平台

php怎么把数组的值放到一个新数组_PHP提取数组值到新数组 211

查看详情 php怎么把数组的值放到一个新数组_PHP提取数组值到新数组

2、执行 $newArr = array_map(function($v) { return $v; }, $arr);

3、结果与原数组值顺序一致,键名被丢弃,生成数字索引新数组。

四、使用 spl_array_iterator 或 ArrayIterator 对象遍历

适用于需面向对象风格操作或配合迭代器接口使用的场景。

1、创建迭代器实例:$it = new ArrayIterator($arr);

2、初始化新数组:$newArr = [];

3、遍历并提取值:foreach ($it as $value) { $newArr[] = $value; }

五、使用 array_column()(针对多维数组)

当原始数组是二维或更高维结构,且目标是提取某列全部值时,此函数直接有效。

1、定义二维数组:$arr = [[‘id’=>1,’name’=>’A’],[‘id’=>2,’name’=>’B’]];

2、提取 name 列:$newArr = array_column($arr, ‘name’);

3、结果为 [‘A’, ‘B’],即指定键对应的所有值构成的新数组。

text=ZqhQzanResources