如何在一个数组中获取多维关联数组键?

时间:2019-02-22 06:47:24

标签: php arrays

我有数组数据,每个数组在数组中也都有自己的值,如下所示:

$array['loc']=array('india','usa','germany');   
$array['loc1']=array('india','usa','germany');      
$array['loc2']=array('india','usa','germany');      
$array['loc3']=array('india','usa','germany');      
$array['loc4']=array('india','usa','germany');   

我希望将键列表放在一个数组中,如下所示:

$list['keys']=array('loc','loc1','loc2','loc3');

2 个答案:

答案 0 :(得分:4)

您可以使用array_keys

$array = [];
$array['loc']=array('india','usa','germany');   
$array['loc1']=array('india','usa','germany');      
$array['loc2']=array('india','usa','germany');      
$array['loc3']=array('india','usa','germany');      
$array['loc4']=array('india','usa','germany');   

$list['keys'] = $keys = array_keys($array);
print_r($list['keys']);

array_keys —返回数组的所有键或键的子集

Demo

输出

Array
(
    [0] => loc
    [1] => loc1
    [2] => loc2
    [3] => loc3
    [4] => loc4
)

答案 1 :(得分:2)

您可以像这样使用PHP的array_keys方法:

array_keys($array)

这将为您提供所有位置的数组。如果需要这些键的数组$list,可以使用以下命令构建数组:

$list["keys"] = array_keys($array)

请参见以下示例:

$array['loc']=array('india','usa','germany');   
$array['loc1']=array('india','usa','germany');      
$array['loc2']=array('india','usa','germany');      
$array['loc3']=array('india','usa','germany');      
$array['loc4']=array('india','usa','germany');   

$list["keys"] = array_keys($array);

print_r($list["keys"]);

输出

Array ( [0] => loc [1] => loc1 [2] => loc2 [3] => loc3 [4] => loc4 )