1 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊
我知道你在這里做什么,為了讓白色和黑色方塊交替出現(xiàn),但這確實(shí)讓你的下一份工作(計(jì)算出你當(dāng)前輸出 HTML 的方塊)非常困難。
你最好做一個(gè)嵌套for循環(huán),每個(gè)循環(huán)有 8 次迭代;外層用于行,內(nèi)層用于每行中的正方形。
for對(duì)初學(xué)者來說,嵌套循環(huán)可能看起來更復(fù)雜,但實(shí)際上它更準(zhǔn)確地表示了棋盤的樣子——一個(gè) 8x8 網(wǎng)格——這使得思考起來容易得多。
使用嵌套for循環(huán)的另一個(gè)很好的例子,這幾乎正是你應(yīng)該在這里采用的方法,看看這個(gè)輸出 10x10 乘法平方的例子:https : //www.w3resource.com/php-exercises/php -for-loop-exercise-10.php
您可以使用模數(shù) ( %) 運(yùn)算符來決定將正方形設(shè)為黑色還是白色。
for ($i=0; $i<10; $i++) {
echo $i % 2;
}
// Will output 01010101...
// ... so if 0 is white and 1 is black...
您必須將當(dāng)前行和當(dāng)前方塊的值相加,然后使用模運(yùn)算符來區(qū)分每行上黑/白方塊的位置。
然后,為了對(duì) B4 正方形做一些特別的事情,這只是一個(gè)簡(jiǎn)單if表達(dá)式的例子:
if ($row == 2 && $square == 4) {
// Output chess piece HTML
}
(在這種情況下,我假設(shè)您已經(jīng)從 1 開始循環(huán)迭代,但在 PHP 和其他語言中更常見的是看到從 0 開始的循環(huán),因?yàn)檫@就是數(shù)組結(jié)構(gòu)的編號(hào)方式。當(dāng)然,這里的 B 行,第二行,是第 2 行。)
正如我所看到的你正在學(xué)習(xí),我沒有在這里為你拼出答案,但你和其他人應(yīng)該會(huì)發(fā)現(xiàn)這很有幫助。
- 1 回答
- 0 關(guān)注
- 226 瀏覽
添加回答
舉報(bào)