本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
php让数组只保留键名的两种方法
方法1:使用array_keys()函数获取数组全部键名
array_keys() 函数可以获取数组中的部分或所有键名。
array_keys(array,value,strict)
参数 | 描述 |
---|---|
array | 必需。规定数组。 |
value | 可选。您可以指定键值,然后只有该键值对应的键名会被返回。 |
strict | 可选。与 value 参数一起使用。可能的值:
|
当想获取全部键名时,只需设置第一个参数,将第二和第三个参数省略即可。
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$arr=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
var_dump($arr);
$keys=array_keys($arr);
echo "数组只保留键名:";
var_dump($keys);
?>
如果想要获取指定值的键名,则第二和第三个参数不省略
<?php
header("Content-type:text/html;charset=utf-8");
$arr=array("Name"=>"Peter","Age1"=>"41","Age2"=>41,"Country"=>"USA");
var_dump($arr);
$keys1=array_keys($arr,41);
echo "数组只保留键名:";
var_dump($keys1);
$keys2=array_keys($arr,41,true);
var_dump($keys2);
?>
方法2:利用foreach循环和一个空数组来获取数组全部键名
实现思想:
利用foreach循环遍历原数组的键名和键值,只将键名赋值给空数组即可。
示例:
<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("aaa"=>11,"bbb"=>22,"ccc"=>33);
var_dump($arr1);
$arr2=array();
foreach($arr1 as $k=>$v){
$arr2[]=$k;
}
echo "数组只保留键名:";
var_dump($arr2);
?>