php去掉数组的key重组数组的四种方法
作者:徊忆羽菲
在PHP开发中数组是常用的数据结构之一,在处理数组时有时候需要去掉数组的key,只取数组中的值,这篇文章主要给大家介绍了关于php去掉数组的key重组数组的四种方法,需要的朋友可以参考下
方法一:foreach循环
使用foreach循环遍历数组时,可以只取出数组的值。示例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); foreach ($arr as $value) { echo $value . " "; } // 输出:1 2 3
方法二:array_values()函数
PHP提供了一个专门去掉数组键名的函数 array_values()。该函数返回一个只包含数组中所有值的新数组,没有键名。示例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_values($arr); print_r($newArr); // 输出:Array ( [0] => 1 [1] => 2 [2] => 3 )
我们可以得到一个不含有键名的新数组。
方法三:array_map()函数
array_map()函数是一个非常强大的函数,它可以对数组中的每个元素应用一个回调函数,然后返回一个数组,该数组的每个元素都是回调函数的返回值。示例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_map(function($value) { return $value; }, $arr); print_r($newArr); // 输出:Array ( [one] => 1 [two] => 2 [three] => 3 )
可以看到,array_map()函数并没有去掉数组的键名。我们可以通过结合使用array_map()函数和array_values()函数来实现去掉数组键名的效果,示例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); $newArr = array_values(array_map(function($value) { return $value; }, $arr)); print_r($newArr); // 输出:Array ( [0] => 1 [1] => 2 [2] => 3 )
结合使用array_map()函数和array_values()函数,我们可以得到一个不含有键名的新数组。
方法四:强制类型转换
将一个数组强制转换为一个整数或者字符串类型,PHP会自动去掉数组的键名,只取数组中的值。示例如下:
$arr = array('one'=>1, 'two'=>2, 'three'=>3); echo (int)$arr; // 输出:Array echo (string)$arr; // 输出:Array
通过强制类型转换,我们同样可以得到一个不含有键名的新数组。
总结
到此这篇关于php去掉数组的key重组数组的四种方法的文章就介绍到这了,更多相关php去掉数组key重组数组内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!