php一维数组怎么去掉key(键名)
时间 : 2023-02-15 23:17:01声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

PHP中,一维数组是一个元素一维或有一个访问范围限定的多维数组,每个元素都有一个相关的键(key)和值(value)。有时我们需要在日常的编程中去掉一维数组的key,其实PHP提供了几种有效的方式来完成这项工作。

第一种方法是使用array_values()函数,它可以去除一维数组中的key,并将其转换为一个值数组。

比如:

$arr=array("name"=>"zhangsan","age"=>"20","sex"=>"male");

$newarr=array_values($arr);

此时$newarr是一个去除key的一维数组,它的值为:

$newarr=array("zhangsan","20","male");

第二种方法是使用array_keys()函数, 它可以将一维数组的key转换成一个新的数组,然后返回原始数组,如下:

$arr=array("name"=>"zhangsan","age"=>"20","sex"=>"male");

$newarr=array_keys($arr);

此时$newarr的值将变成一个新的数组,如下:

$newarr=array("name","age","sex");

第三种方法就是遍历原始数组,使用foreach语句删除key, 用unset()函数删除key,如下示例:

$arr=array("name"=>"zhangsan","age"=>"20","sex"=>"male");

foreach($arr as $key=>$value){

unset($arr[$key]);

$newarr[]=$value;

}

此时,$newarr的值将变成一个去除key的一维数组,如下:

$newarr=array("zhangsan","20","male");

总之,PHP提供了几种有效的方式来完成去除一维数组key(键名)的工作,可以根据实际需要任意使用。

PHP一维数组,也可以叫做关联key-value数组,指的是在PHP中定义的数组,其中每个数组元素都有一个键名(key)和值(value)。PHP去掉一个数组中的key,我们可以用array_values函数来实现。

array_values()函数用于返回数组中所有的值,但不包括键名。它的主要功能就是去掉key的方法。

比如:

<?php

$arr = array("a"=>"China","b"=>"United States","c"=>"England");

$arr1 = array_values($arr);

print_r($arr1);

?>

执行后,将会输出:Array ( [0] => China [1] => United States [2] => England )

可以看到,原来的key a, b, c都消失了,而只返回了value的值。

如果你想只去掉部分key,例如去掉$arr数组中的a,那么可以使用函数array_diff_key。 array_diff_key()函数用于检查两个数组的差异,并返回第一个数组中只存在的值。

比如,我们用array_diff_key()去掉a时,可以这样写:

<?php

$arr = array("a"=>"China","b"=>"United States","c"=>"England");

$arr1 = array_diff_key($arr,array("a"=>""));

print_r($arr1);

?>

执行后,将会输出:Array ( [b] => United States [c] => England )

可以看到,原来的a键消失了,而b, c依然保留了。当然,如果需要只保留某一个key时,也可以用array_intersect_key来实现,语法与array_diff_key()类似。

以上就是PHP中介绍的去掉一维数组中Key(键名)的几种方法,可以根据不同的需要,选择不同的函数来实现,例如array_values()、array_diff_key()和array_intersect_key()等等都是非常好的选择。