- ベストアンサー
PHPで配列に格納されたデータを表示させるには。
PHPで配列に格納されたデータを表示させるには。 全ての配列の要素を表示させることは下のようにすればできるのはわかります。 <?php for($i=0;$i<sizeof($data);$i++){ echo $data[$i]; echo "<br>"; } ?> 配列の0~9まで(10個)をまず表示させて、「次へ」のようなリンクで次の10~19までを表示させるようにしたいのですが、どのようにすればよいのでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
多分、データの有無でリンクを自動生成されたいのでしょう。 データの「何番目から何個表示するか」を決定し、もっとデータがあればリンクを生成してやるとよいです。 --------------------------------------- //仮data生成しているだけ $data = range(0,50); //開始No。$_GET['start']が数字ならその値を、不正なら0を代入 $start = (ctype_digit($_GET['start']) ? $_GET['start']:0); //1ページの表示件数 $kensuu = 10; //表示例。$dataから必要分を切り出して回す。 //もちろんお好み次第でforでもなんでも。 foreach( array_slice($data,$start,$kensuu) as $val){ echo "$val <br>"; } //次のデータがあれば start番号付きのリンクを生成 $next = $start + $kensuu; if($data[$next]){ echo "<a href='○○.php?start=$next'>次へ</a>"; } ------------------------------------------
その他の回答 (1)
- mokokomi
- ベストアンサー率71% (5/7)
<!-- ここから --> <?php $offset = 10; $data = array( 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19 ); if( isset($_GET['i'])){ $i = $_GET['i'] * $offset; $max = $i + $offset; for(;$i<$max;$i++){ if(isset($data[$i])){ echo $data[$i]; } else{ echo "未定義"; } echo "<br>"; } } ?> <a href="/index.php?i=0">リンク0</a> <a href="/index.php?i=1">リンク1</a> <!-- ここまでをコピペして index.php として保存して ウェブサーバーに設置してブラウザで実行する. -->
お礼
ありがとうございました。
お礼
丁寧に教えていただき、ありがとうございました。