- ベストアンサー
if構文で更に条件分岐する方法
- if構文の中で更に条件分岐をしたい場合、elseif文を使用することで実現できます。
- ニュース記事をカテゴリ別に表示する際、if文でカテゴリを判定し、それに応じた処理を行います。
- 24時間以内の記事にはNEWを表示するために、if文の中で投稿日時と現在の日時を比較し、適切な処理を行います。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
「ニュース記事のようにカテゴリ分け」と「その記事が24時間以内のものであるか」は別々の要件で特に絡める必要はないように思えます。 そしてループ条件は同じですから、 NEWを先に出したいなら(1)の位置に、後に出したいなら(2)の位置に $ts = strtotime($rec['date']); $tsi = (time()-$ts); if($tsi<86400){ echo new.'<br>'; } else{ echo '<br>'; } を配置すればいいのではないでしょうか。 while($rec = mysql_fetch_array($rs, MYSQL_ASSOC)){ ===(1)=== if($rec['category'] == 1){ echo '<a href="'.$rec['url'].'" target=_blank>'.$rec['title'].'</a><br>'; } elseif($rec['category'] == 2){ echo '<a href="'.$rec['url'].'" target=_blank>'.$rec['title'].'</a><br>'; } elseif($rec['category'] == 3){ echo '<a href="'.$rec['url'].'" target=_blank>'.$rec['title'].'</a><br>'; } ===(2)=== } ちなみにカテゴリは1~3までしかありえないなら良いのですが、 そうでなく、1~3以外は無視したいという要件なら、 24時間以内を出すところを「カテゴリが1~3の時」という条件で囲う必要はあります。
お礼
初歩的なところだったんですね・・・ でも、教えてもらわないと分かりませんでした。 どうもありがとうございました。