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

如何在php中访问多维数组中的元素,php,arrays,Php,Arrays,如何访问多维数组每个键下的所有元素 $multi = array ( "Abhishek" => array("Choudhary", "Bunta", "Popy"), "Bond" => array("One", "two", "three", "four"), "Super" => array("T1", "T2") ); $data = array("Abhishek","Bond","Super");

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

$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]) ;
    }
}
预期为:

**

**


免责声明:我对PHP非常陌生,因此可能是我的期望无效,或者我错过了一些非常愚蠢的事情。

@bunta请检查以下内容:

你可以用foreach代替

此外:


HTH.

@bunta请查看以下内容:

你可以用foreach代替

此外:


HTH.

我建议您阅读一些关于阵列的文章,无论如何,您的需求可以通过以下代码来实现:

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) ;
    }
} 
foreach($multi-as$key=>$value){
echo“
主数组值“$key”。
”; 对于($i=0;$i

PS:您不需要
$data
array

我建议您阅读一些关于array的文章,无论如何,您的需求可以通过以下代码实现:

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) ;
    }
} 
foreach($multi-as$key=>$value){
echo“
主数组值“$key”。
”; 对于($i=0;$i

PS:您不需要
$data
array

只需要使用foreach在$multi-array上迭代(如果您只想知道每个元素级别1的子元素数):


您只需要使用foreach在$multi-array上迭代(如果您只想知道每个元素级别1的子元素数):

使用
foreach()
会更容易

foreach ($multi as $key => $subarray)
{
    echo $key . '<br />';

    foreach ($subarray as $subvalue)
    {
        echo ' - '.$subvalue . '<br />';
    }
}
使用
foreach()
会更容易

foreach ($multi as $key => $subarray)
{
    echo $key . '<br />';

    foreach ($subarray as $subvalue)
    {
        echo ' - '.$subvalue . '<br />';
    }
}
试试这个:

<?php

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

?>

You are using wrong syntax to access it.

您使用了错误的语法来访问它。
  • 谢谢
试试这个:

<?php

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

?>

You are using wrong syntax to access it.

您使用了错误的语法来访问它。
  • 谢谢

这应该是一个评论,因为它没有给出问题的明确答案question@AlmaDoMundo谢谢,我忘了将链接添加到答案中。仅链接的答案在Stackoverflow上的值很低。这应该是一个注释,因为它没有给出问题的明确答案question@AlmaDoMundo谢谢我忘了在答案中添加链接。只有链接的答案在Stackoverflow上的值很低。为什么要投否决票?我给出了一种迭代的方法,我估计如果你想知道子元素的数量,它是有用的。为什么要进行向下投票?我给出了一种迭代的方法,我认为如果想知道子元素的数量,它是有用的。
<?php

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

?>

You are using wrong syntax to access it.