php怎么去掉数组的key

PHPz
PHPz 原创
2023-04-23 10:27:18 684浏览

在PHP开发中,数组是常用的数据结构之一。在处理数组时,有时候需要去掉数组的key,只取数组中的值。下面,我们来介绍几种常用的去掉数组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

通过强制类型转换,我们同样可以得到一个不含有键名的新数组。

综上所述,我们介绍了四种去掉数组键名的方法:foreach循环、array_values()函数、array_map()函数结合array_values()函数、以及强制类型转换。各种方法各有优缺点,根据具体需求选择不同的方法即可。

以上就是php怎么去掉数组的key的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。