获取数组索引和值名称的有效方法


Effective way to get array index and value names

我有一个 0 索引数组,我对此无能为力,但在这个数组中有一些我需要回显的值。 示例数组为:

$x =  array(0 => array('store'=> 107));

我想要 2 个既回显文本store107的变量

我可以做到这一点,使用

$var1 = array_keys($x[0]); 
$var2 = array_values($x[0]); 
echo $var1[0]; // store 
echo $var2[0]; // 107

我想知道是否有更有效的方法来获取这些值,或删除第一个0索引。 因为array_filter($x)unset($x)显然不像其他情况那样有效。

作为替代方案,如果您好奇,也可以使用key()reset()的组合。

$x =  array(0 => array('store'=> 107));
$y = reset($x); // point to first element
$key = key($y); // get the current key, store
$val = reset($y); // get the value
echo $key; // store
echo $val; // 107

这应该适合你。

$x =  array(0 => array('store'=> 107));
foreach($x as $y){
    foreach ($y as $key => $value){
        echo $key;
        echo $value;
    }
}