我試圖在三個這樣的行顯示的數據(注意項目的數量不會永遠是偶數):三個行中的PHP回聲?
abcd defg hijk lmno pqrs tuvw xyz1 2345 6789 1011 1213
我掙扎着爬邏輯正確的做到這一點(這是在foreach()
循環中)。
我知道我必須有一些if($i %3 == 0)
邏輯在那裏..但我有點卡住了。
任何人都可以幫我嗎?
我試圖在三個這樣的行顯示的數據(注意項目的數量不會永遠是偶數):三個行中的PHP回聲?
abcd defg hijk lmno pqrs tuvw xyz1 2345 6789 1011 1213
我掙扎着爬邏輯正確的做到這一點(這是在foreach()
循環中)。
我知道我必須有一些if($i %3 == 0)
邏輯在那裏..但我有點卡住了。
任何人都可以幫我嗎?
$a = array('abcd','defg','hijk','lmno');
for ($i = 0; $i < count($a); $i++) {
if ($i && $i % 3 == 0)
echo '<br />';
echo $a[$i].' ';
}
僞代碼,因爲我不知道PHP(你問這往往是在所有的程序語言相同的邏輯):
perline = 3
i = 0
foreach item in list:
if i > 0 and (i % perline) == 0:
print newline
if (i % perline) != 0:
print space
print item
i = i + 1
這將兩個輸出一個行分隔符在元素3,6,9等(第一個元素爲0)和之前,在每行的第二個和第三個元素之前放置所需的任意間距。您可以對perline
使用不同的值來更改每行上的數字輸出。
這是更好地使用for
環路:
// run $i for each index in the array.
for($i=0 ; $i<count($arr) ; $i++) {
// if $i is non-zero and is divisible by 3 print a line break.
if ($i && $i % 3 == 0) {
echo "<br />";
}
// print the element at index $i.
echo $arr[$i].' ';
}