前提・実現したいこと
ブログのタイトルにつけている「第〇回 ~~」を「第〇回の箇所を取得して、
第1回~第10回、第11回~第20回、第21回~・・・と、10件ずつまとめて下記のように表示したい。
▽第1回~第10回
・第10回
・第9回
・第8回
~
・第1回
発生している問題・エラーメッセージ
「▽第1回~第10回」の箇所を取得するため、minとmaxで最小値と最大値を取得しています。
また、10個ずつ取得したいと思ったため、余りが1になった場合、$iをインクリメントし、10件ずつまとめようとしておりますが、
順番通りに追加されず、
例えば、第20回の後に第21回じゃなく、第23回のブログを登録した場合、$iはインクリメントされず、同じ配列内に追加されてしまします。
該当のソースコード
PHP
1 2$i = 0; 3foreach($times_data as $key => $value){ 4 $array_times[$i]['times'][$key] = $value; 5 if($key % 10 === 1){ 6 //最小値 7 $array_times[$i]['min'] = min(array_keys($array_times[$i]['times'])); 8 //最大値 9 $array_times[$i]['max'] = max(array_keys($array_times[$i]['times'])); 10 $i ++; 11 } 12 13}
上記の$times_dataは下記の連想配列になっています。 Array ( [20] => Array ( [id] => 19 [times] => 20 ) [19] => Array ( [id] => 20 [times] => 19 ) [17] => Array ( [id] => 17 [times] => 17 ) [16] => Array ( [id] => 16 [times] => 16 ) [15] => Array ( [id] => 15 [times] => 15 ) [14] => Array ( [id] => 14 [times] => 14 ) [13] => Array ( [id] => 13 [times] => 13 ) [12] => Array ( [id] => 12 [times] => 12 ) [11] => Array ( [id] => 11 [times] => 11 ) [10] => Array ( [id] => 10 [times] => 10 ) [9] => Array ( [id] => 9 [times] => 9 ) [8] => Array ( [id] => 8 [times] => 8 ) [7] => Array ( [id] => 7 [times] => 7 ) [6] => Array ( [id] => 6 [times] => 6 ) [5] => Array ( [id] => 5 [times] => 5 ) [4] => Array ( [id] => 4 [times] => 4 ) [3] => Array ( [id] => 3 [times] => 3 ) [2] => Array ( [id] => 2 [times] => 2 ) [1] => Array ( [id] => 1 [times] => 1 ) )
やりたいこと
第1回~第10回、第11回~第20回、第21回~・・・と、10件ずつまとめて表示したいのですが、どのようにしたらよろしいでしょうか。
回答1件
あなたの回答
tips
プレビュー