web関連

【PHP】5の倍数ずつdivで囲む方法

【PHP】5の倍数ずつdivで囲む方法

ループ文で配列を5の倍数ごとにdivで囲んで出力したかった時の備忘録

5の倍数ずつdivで囲む

<?php
$list = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30);
$count = count($list);
for($i = 0; $i < $count; $i++){
	//5の倍数の時にdivを出力
  	if ($i % 5 === 0) {
  		echo "<div class='box'>";
  	}
  	//配列の中身を出力
	echo $list[$i];
	//余りが4の時か一番最後のループの時に閉じのdivを出力
  	if ($i % 5 === 4  || $i === $count - 1) {
  		echo "</div>";
  	}
}
?>

5の倍数は$i % 5 === 0で判別できる
「0,5,10,15…」と5の倍数でdivは挿入されるけど、5つずつ出力される配列をdivで囲みたいので$iの値が「4,9,14,19…」の時に閉じのdivを挿入する必要がある
「4,9,14,19…」は5の倍数で余りが4になる時の数値なので$i % 5 === 4で判別できる
最後に$i === $count - 1で一番最後のループかどうか判別して5の倍数でも余りが4でもない時に閉じのdivを挿入してお終い

普段使わない頭の部分使った(-"-)

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。

CAPTCHA