php中二维数组怎么去掉key(键名)

去除步骤:1、定义一个空数组,用于存储去掉key的数组元素,语法“$res=[];”;2、使用foreach语句循环遍历二维数组的外层元素,语法“foreach($arr as $v){//循环体代码}”;3、在循环体中,去掉二维数组的key(键名),语法“if(is_array($v)){$res[]=array_values($v);}else{$res[]=$v;}”。

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

在php中,可以利用foreach语句和array_values()函数来去掉二维数组的key(键名)。

实现步骤:

步骤1:定义一个空数组,用于存储去掉key(键名)的数组元素

$res=[];

步骤2:使用foreach语句循环遍历二维数组的外层数组元素

foreach($arr as $v){
//循环体代码
}

遍历给定的 $arr 数组,在每次循环中会将当前数组的值赋给 $v。

步骤3、在循环体中,去除该外层和内层数组元素的key(键名)

使用is_array()函数判断外层元素是否为数组类型(即是否为二维数组的内层数组)

  • 如果是,则使用array_values()函数去掉内层数组的key(键名),并赋值给空数组$res

  • 如果不是,则直接将给外层元素的键值赋给给空数组$res

if(is_array($v)){
	$res[]=array_values($v);
}else{
	$res[]=$v;
}

循环结束后,$res数组就是去掉key(键名)的二维数组了。

完整实现代码:

<?php
header('content-type:text/html;charset=utf-8');   
$arr = array(
"a"=>1,
"b"=>2,
"c"=>array("c1"=>3,"c2"=>4,"c3"=>5,"c4"=>6),
"d"=>6,
"e"=>array("e1"=>7,"e2"=>8,"e3"=>9,"e4"=>10),
"f"=>10,
"g"=>array("g1"=>11,"g2"=>12,"g3"=>13)
);
echo "原二维数组:";
var_dump($arr);

$res=[];
foreach($arr as $v){
if(is_array($v)){
	$res[]=array_values($v);
}else{
	$res[]=$v;
}
}
echo "去掉key(键名)的二维数组:";
var_dump($res);
?>