本日のお題はループ文の脱出方法です。
ループの勉強4日目です。
本日のPHP講師には再びid:m_shige1979先生をお呼びしております。
先生よろしくお願いします。
とりあえず、returnだと処理がその時点で終了してが出力できない可能性もあるのでbreakでループを抜けるようにしないと・・・。
returnはfunctionを抜ける場合に使用します。
これは前回の私のコードへのご指導です。
前回のコード。
<?php // TABLE枠組み echo '<table>'; for ($i = 0; $i < $imgCnt; $i++) { // もう一方のカウントオーバーでもやめる if ($i > $nameCnt) { return; } // <中略> } echo '</table>'; ?>
お恥ずかしや(>_<)
確かにreturnで抜けるとループだけじゃなくて、関数や処理全体からも抜けてしまいますね・・・。
失礼しました。
初心者丸出しのコードになっていました(^^;
id:m_shige1979先生、教えて頂きどうもありがとうございます(^^)/
プログラミング
さてさて、本日は時間がないので教えてもらった箇所を直してアップし直してみましょう!
09:38 実装開始。
・・・
一回ミス。上記のif文判定間違ってた・・・。
・・・
09:40 実装完了。
2分で実装できました。
作ったPHPの公開URL
動作画面
ソースコード
<?php $arrayImg = array('http://omt.shinobi.jp/images/hatena_ninja_l.png',||< 'http://static.evernote.com/site-mem-32.png', 'http://omt.shinobi.jp/images/pocket_ninja_l.png',おぉ!結構きれいに出せた! 'http://omt.shinobi.jp/images/tumblr_icon_blue_l.png',成功成功♪ 'http://omt.shinobi.jp/images/twitter_tweet_ninja_l.png', 'http://omt.shinobi.jp/images/google_plusone_ninja_l.png', 'http://omt.shinobi.jp/images/rss_button_l.png'); $arrayName = array('はてなブックマーク', 'エバーノート', 'ポケット', 'タンブラー', 'ツイッター', 'ググタス'); $imgCnt = count($arrayImg); $nameCnt = count($arrayName); // TABLE枠組み echo '<table>'; for ($i = 0; $i < $imgCnt; $i++) { // もう一方のカウントオーバーでもやめる if ($i >= $nameCnt) { break; } echo '<tr><td>'; echo '<img src='.$arrayImg[$i].'>'; echo '</td><td>'; echo '<b>'.$arrayName[$i].'</b>'; echo '</td><tr>'; } echo '</table>'; ?>
if文の判定が「>」だとダメで「>=」じゃないと効きませんでした(^^;
わざと$arrayImgの配列を1つ多くしてありますので、最後のRSSの画像はbreakでループを抜けているために表示されません。
- 作者: 鈴木光司
- 出版社/メーカー: 角川書店
- 発売日: 2000/09/08
- メディア: 文庫
- 購入: 1人 クリック: 32回
- この商品を含むブログ (49件) を見る