簡體   English   中英

如何使用foreach列出鍵值關聯數組

[英]How to list key-value associative array using foreach

假設我們有一個數組:

$aa = array('student1'=>array(1,2,3),'student2'=>array(3,2,4),'student3'=>array(4,3,5));

我想要一個如下的HTML輸出:

<ul>
    <li>student1
        <ul>
            <li>1</li>
            <li>1</li>
            <li>1</li>
        </ul>
    </li>
    <li>student2
        <ul>
            <li>3</li>
            <li>2</li>
            <li>4</li>
        </ul>
    </li>
    <li>student3
        <ul>
            <li>4</li>
            <li>3</li>
            <li>5</li>
        </ul>
    </li>
</ul>

但是我所能做的就是

<ul>
    <li>
        <ul>
            <li>1</li>
            <li>1</li>
            <li>1</li>
        </ul>
    </li>
    <li> 
        <ul>
            <li>3</li>
            <li>2</li>
            <li>4</li>
        </ul>
    </li>
    <li> 
        <ul>
            <li>4</li>
            <li>3</li>
            <li>5</li>
        </ul>
    </li>
</ul>

換句話說,我無法為每個內部數組打印鍵。 怎么做?

我已經編寫了類似的代碼:

echo '<ul>';

foreach($aa as $a)
{
    echo '<li>' . /*Here it should be written the current student name*/ '<ul>';

    foreach($a as $b)
    {
        echo '<li>' . $b . '</li>';
    }
    echo '</ul></li>';

}
echo '</ul>';
<ul>
<?php
  foreach ($aa as $name => $values) {
    echo "<li>$name\n";
    echo "<ul>\n";
    foreach ($values as $value) {
      echo "<li>$value</li>\n";
    }
    echo "</ul>\n";
    echo "</li>\n";
  }
?>
</ul>

像這樣打印數組:

echo "<pre>";
print_r($array);
echo "</pre>";

這樣,您可以查看數組的內部結構。

然后,您可以像這樣列出它:

$a = array(
    "one" => 1,
    "two" => 2,
    "three" => 3,
    "seventeen" => 17
);

foreach ($a as $k => $v) {
    echo "\$a[$k] => $v.\n";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM