配列をテーブルで簡単に表示するには? - PHPプロ!Q&A掲示板
テーブルは3列で作っており、この各セルに数字を入れていくものとします。
$list = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
といった感じです。今のところ次のように配列を2次元にしています。
// テーブルを分割する
$table_list = array();
$row_num = 0;
foreach ($list as $key => $val) {
if (!(($key + 1)%3)) {
$row_num++;
}
$table_list[$row_num][] = $val;
}
// 最後の行に値が足りなければ を加える
$count = count($table_list);
$last_count = count($table_list[$count-1];
$sub = 3 - $last_count;
if ($sub) {
for ($i=0; $i<$sub; $i++) {
$table_list[$count-1][$last_count + $i] = ' ';
}
この2次元にするところをもっとスマートにできないでしょうか?foreachを使わずに配列を分割する方法などありましたら、教えて下さい。よろしくお願いします。
この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。





ページのトップへ


再帰関数は最初の内は混乱しますが、非常に上手く使える場面もいずれ出てきます。これを機会に学んでいけるといいですね。