簡體   English   中英

遍歷PHP多維數組

[英]Loop through a PHP Multidimensional Array

我正在嘗試創建一個具有特定數量的行和列的2D數組,我將其存儲為變量$ n ; 因此,如果$ n為5,則我將有5行和5列,全部為隨機數。 我創建了一個for循環(如下所示),該循環生成正確數量的行,但是我無法弄清楚如何同時對列進行相同的操作。 我目前擁有的代碼如下所示。

<?php

    $n = 3;

    for($i=0; $i<=$n; $i++) {
        $value[$i][0] = rand(1,20);
        $value[$i][1] = rand(1,20);
        $value[$i][2] = rand(1,20);
        $value[$i][3] = rand(1,20);
    }   

    print "<table>";    
    for($j=0; $j<$n; $j++)  { // Runs the loop times $n
        print "<tr>";
        for($k=0; $k<$n; $k++)  { // Runs the loop times $n
            print "<td>" . $value[$j][$k] . "</td>";
        }   
        print   "</tr>";    
    }   
    print   "</table>";

?>

在學習創建數組的此循環方面將提供任何幫助,我們將不勝感激。 提前致謝。

您需要在第一個循環內進行第二個循環:

for($i=0; $i<=$n; $i++) { // rows
    for($j=0; $j<=$n; $j++) { // columns
        $value[$i][$j] = rand(1,20);
    }
}

試試這個代替:

$n = 3;

for($i=0; $i<=$n; $i++) {
    $value[$i][0] = rand(1,20);
    $value[$i][1] = rand(1,20);
    $value[$i][2] = rand(1,20);
    $value[$i][3] = rand(1,20);
}   

print "<table>";    
foreach($value as $row){
    print "<tr>";
    foreach($row as $cell){
        print "<td>" . $cell . "</td>";
    }
    print "</tr>";
}
print "</table>";

並使用for循環:

print "<table>";
for($i=0; $i<=$n; $i++) { // rows
    print "<tr>";
    for($j=0; $j<=(count($value[$i])-1); $j++) { // columns
        echo "<td>".$value[$i][$j]."</td>";
    }
    print "</tr>";
}
print "</table>";

暫無
暫無

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

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