如何在php中访问多维数组中的元素

问题描述:

如何访问多维数组每个键下的所有元素.

How to access all the elements under each key of multidimensional array.

$multi = array
(
    "Abhishek" => array("Choudhary", "Bunta", "Popy"),
    "Bond"     => array("One", "two", "three", "four"),
    "Super"    => array("T1", "T2")
);


$data = array("Abhishek","Bond","Super");           

for($j = 0;$j<count($data);$j++)
{
    echo "<br/>Main Array Value ".$data[$j]."<br/>";

    for($i = 0;$i<count($data[$j]);$i++)
    {
        echo "sub Value ".$multi[$data[$j]][$i]." count ".count($data[$j]) ;
    }
}

现在,我要遍历Abhishek,Bond和Super的每个元素,因此我们可以看到Abhishek里面有3个元素,但是$ data [$ j]总是返回1.如果我递增,则可以访问Bunta 当前输出为-

Now I want to iterate through each element of Abhishek , Bond and Super , so we can see Abhishek has 3 elements inside it but $data[$j] always return 1. If I increment then I can access Bunta Currently the output is -

Main Array Value Abhishek
sub Value Bunta
Main Array Value Bond
sub Value two
Main Array Value Super
sub Value T2

,预期为:

**

Main Array Value Abhishek
 sub Value choudhary
 sub Value Bunta
 sub Value Popy
:
:
Main Array Value Bond
 sub Value two
Main Array Value Super
 sub Value T2

**

免责声明:我是PHP的新手,所以可能是我的期望无效或缺少一些非常愚蠢的东西.

Disclaimer : I am super new to PHP so may be my expectation can be invalid or I am missing some very silly thing.

我建议您阅读一些有关 multidim 数组,无论如何,您可以通过以下代码来完成您的需求:

i recommend you read some articles about multidim arrays, anyway your needs could be done with following code:

foreach($multi as $key => $value) {
    echo "<br/>Main Array Value ".$key."<br/>";
    for($i = 0; $i < sizeof($value); $i++) {
        echo "sub Value ".$value[$i]." count ".sizeof($value) ;
    }
} 

PS:您不需要$data数组