アシアル株式会社主催 開発者向け、一歩先をいくためのテクニカルセミナー

<< 暗号解読の可能性について 質問一覧 $pdf->Cellで1文字ずれてしまいます >>

  • 0P
ループを2重でする場合の処理

初心者です。
現在、更新情報のような短文のものをテーブルでループしようと思っているのですが、最初の3件には「NEW」のような文字か画像を入れたいと思っています。

一応以下の記述で動いているのですが、勉強を兼ねてbreak()等を使って、二重ループ? のような形で記述できないものかと考えています。 が、いまいち二重ループが分からないです。
どなたか、アドバイスいただける方 宜しくお願いします。
※実施はもうちょっと echoで出力するテーブルの記述が多いのですが省略しています。



  1. <table>
  2. <?php
  3. for ($a = 0$a <10$a++){
  4. if ($a < 3){
  5. echo "<tr><td>「NEW」等をつける</td></tr>
  6.       <tr><td>「短文」{$tanbun[$a]}</td></tr>";
  7.       }
  8.     else{
  9.     echo "<tr><td>「短文」{$tanbun[$a]}</td></tr>";
  10.     }
  11. }
  12. ?>
  13. </table>

この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。

Qループを2重でする場合の処理 matsu2009  [02月08日 17時55分] 
┣満開Re:ループを2重でする場合の処理 paty_style  [02月08日 21時29分] 
┃┗Re:Re:ループを2重でする場合の処理 matsu2009  [02月08日 22時10分] 
┗満開Re:ループを2重でする場合の処理 hayato0210  [02月09日 07時07分] 
  ┗Re:Re:ループを2重でする場合の処理 matsu2009  [02月11日 21時00分] 

コメント一覧

並び替え( ツリー順 / 投稿順[降順] / 投稿順[昇順]

Re:ループを2重でする場合の処理

ループ2回の方がメンテナンスしやすいと思いますし、条件分岐回数が減るのでスピードも速いですよ?


  1. $limit=3;
  2. for ($a = 0; $a <$limit; $a++){
  3.     echo "<tr><td>「NEW」等をつける</td></tr>
  4.     <tr><td>「短文」{$tanbun[$a]}</td></tr>";
  5. }
  6. for ($a = $limit; $a <10; $a++){
  7.     echo "<tr><td>「短文」{$tanbun[$a]}</td></tr>";
  8. }

Re:Re:ループを2重でする場合の処理

paty_style 様
解答ありがとございます。

なるほど!!
そういう記述にすれば if無しで書けますね!!
書き換えます!!
なかなかそういう発想が思いつきません。頭が固いのか、
経験なんでしょうかね...

現状でも動いていたのですが、質問してよかったです。
有難うございました。

Re:ループを2重でする場合の処理

試していないのであっているかわかりませんが
下記のような書き方はどうでしょうか?

必ずecho "<tr><td>「短文」{$tanbun[$a]}</td></tr>"; 
が呼ばれるのでしたら下記の書き方もスマートかと思います。

  1. <table> 
  2. <?php 
  3. for ($a = 0$a <10$a++){
  4.   if ($a < 3){
  5.     echo "<tr><td>「NEW」等をつける</td></tr> ";
  6.   }else{ 
  7.     echo "<tr><td> </td></tr>";  
  8.   } 
  9.   echo "<tr><td>「短文」{$tanbun[$a]}</td></tr>"
  10. } 
  11. ?> 
  12. </table>

Re:Re:ループを2重でする場合の処理

hayato0210 様

お返事遅くなりました。
解答有難うございます。

この記述の仕方だと、echo部分の記述が少なくてすみますね!!
else で 空のテーブルを挿入するだけでいいから、テーブルの記述が1回ですみますね!!
後は空のテーブルの高さを小さくしてやれば「NEW」がついてないところも隙間が空かなくていいかもですね!!

勉強になりました!!
有難うございました。
暗号解読の可能性について 質問一覧 $pdf->Cellで1文字ずれてしまいます