1 回答
TA贡献1799条经验 获得超6个赞
我知道你在这里做什么,为了让白色和黑色方块交替出现,但这确实让你的下一份工作(计算出你当前输出 HTML 的方块)非常困难。
你最好做一个嵌套for循环,每个循环有 8 次迭代;外层用于行,内层用于每行中的正方形。
for对初学者来说,嵌套循环可能看起来更复杂,但实际上它更准确地表示了棋盘的样子——一个 8x8 网格——这使得思考起来容易得多。
使用嵌套for循环的另一个很好的例子,这几乎正是你应该在这里采用的方法,看看这个输出 10x10 乘法平方的例子:https : //www.w3resource.com/php-exercises/php -for-loop-exercise-10.php
您可以使用模数 ( %) 运算符来决定将正方形设为黑色还是白色。
for ($i=0; $i<10; $i++) {
echo $i % 2;
}
// Will output 01010101...
// ... so if 0 is white and 1 is black...
您必须将当前行和当前方块的值相加,然后使用模运算符来区分每行上黑/白方块的位置。
然后,为了对 B4 正方形做一些特别的事情,这只是一个简单if表达式的例子:
if ($row == 2 && $square == 4) {
// Output chess piece HTML
}
(在这种情况下,我假设您已经从 1 开始循环迭代,但在 PHP 和其他语言中更常见的是看到从 0 开始的循环,因为这就是数组结构的编号方式。当然,这里的 B 行,第二行,是第 2 行。)
正如我所看到的你正在学习,我没有在这里为你拼出答案,但你和其他人应该会发现这很有帮助。
- 1 回答
- 0 关注
- 274 浏览
添加回答
举报
