PHP棋盘8x8 for循环

时间:2015-03-20 14:19:04

标签: php html loops for-loop html-table

我正在尝试在PHP中使用两个for循环来做一个8 * 8的棋盘而且我遇到了困难。有人能帮助我吗?

echo "<table>";
for($i = 0; $i < 8; $i++){
    if($i % 2 == 0){
        echo "<tr style= 'background-color: black;'>";
    }else{
        echo "<tr style='background-color: pink;'>";
    }
    for($y = 0; $y < 8; $y++){
        if($y % 2 ==0){
            echo "<td style= 'background-color: black;'>";
        }else{
            echo "<td style='background-color: pink;'>";
            }
        echo "10";
        echo "</td>";
    }
    echo "</tr>";
}
echo "</table>";

2 个答案:

答案 0 :(得分:1)

如果没有明确的问题描述,我只能猜测问题是行不是交替的。

要添加 - 以便第一行以不同的颜色作为第二行开始 - 您可以在内部循环中使用$i的值:

// let $y go from 0 - 8 and 1 - 9 in alternating rows
for($y = ($i % 2); $y < (($i % 2) + 8); $y++){

你不需要设置行的背景颜色,只需要设置细胞,或者 - 甚至更好 - 只需设置交替的细胞。

答案 1 :(得分:1)

echo "<table>";
for($i=0; $i < 8; $i++){
    echo "<tr>";
    for($j=0; $j < 8; $j++){
        if($i % 2 == 0){
            if($j % 2 == 0){
                echo '<td style="background-color: pink; width: 10px; height:10px"></td>';
            } else {
               echo '<td style="background-color: black; width: 10px; height:10px"></td>'; 
            }
        } else {
           if($j % 2 == 0){
                echo '<td style="background-color: black; width: 10px; height:10px"></td>';
            } else {
               echo '<td style="background-color: pink; width: 10px; height:10px"></td>'; 
            } 
        }
    }
    echo "</tr>";
}
echo "<table>"