拙著「上手に稼ぐカラ売りテクニック」が発売されました。
株価が下がる局面で利益を得ることができる「空売り」について、詳しく解説した本です。
自由国民社刊で、定価1,512円(税込)です。
PHPUtilプラグイン(その16・繰り返しを途中で抜ける)
PHPUtilプラグインでは、繰り返しの処理を途中で抜けることもできます。
1.MTPHPBreakタグ
繰り返しを途中で抜けるには、MTPHPBreakというテンプレートタグ(ファンクションタグ)を使います。
MTPHPFor/MTPHPLoop/MTPHPWhile/MTPHPUntil/MTPHPDoWhile/MTPHPDoUntilの各タグのブロックの中で、MTPHPBreakタグを使うことができます。
MTPHPIfタグで条件を判断して、その条件を満たした時にMTPHPBreakタグで繰り返しを抜ける、といった使い方ができます。
<mt:PHPFor等の繰り返し系タグ> ・ ・ ・ <mt:PHPIf 繰り返しを抜けるかどうかの条件> 繰り返しを抜ける前の処理 <$mt:PHPBreak$> </mt:PHPIf> ・ ・ ・ </mtPHPFor等の繰り返し系タグ>
2.事例
例えば、以下のような処理を行いたいとします。
- 配列numがあって、個々の要素に数値が代入されています。
- 配列numの先頭の要素から順に調べ、値が10以上になっている要素があれば、最初に見つかった要素の番号と値を表示します。
- 値が10以上の要素がなければ、「値が10以上の要素は見つかりませんでした。」と表示します。
上記の処理をテンプレートで表すと、以下のようになります。
<$mt:PHPSetVar name="is_found" value="0"$> <mt:PHPLoop name="num"> <mt:PHPIf name="__value__" ge="10"> <p><$mt:PHPGetVar name="__key__"$>番目の要素が10以上で、値は<$mt:PHPGetVar name="__value__"$>でした。</p> <$mt:PHPSetVar name="is_found" value="1"$> <$mt:PHPBreak$> </mt:PHPIf> </mt:PHPLoop> <mt:PHPUnless name="is_found"> <p>値が10以上の要素は見つかりませんでした。</p> </mt:PHPUnless>
1行目のMTPHPSetVarタグで、「is_found」という変数に0を代入しています。
この変数は、値が10以上の要素が見つかったかどうかを表すものです。
繰り返しに入る前の段階では、まだ要素は見つかっていないので、偽を表す0を代入しておきます。
2/8行目のMTPHPLoopタグで、配列numから要素を1つずつ順に取り出し、繰り返しを行います。
次に、3/7行目のMTPHPIfタグで、要素の値(変数__value__)が10以上かどうかを調べます。
条件を満たしたら(要素が見つかったら)、4行目によって、見つかった要素の番号と値を出力します。
また、要素が見つかったので、5行目の変数is_foundに、真を表す1を代入します。
そして、6行目のMTPHPBreakタグで繰り返しを抜けます。
9/11行目のMTPHPUnlessタグでは、変数is_foundが偽(=要素が見つからなかった)場合の処理を行います。
この場合、10行目によって、「値が10以上の要素は見つかりませんでした。」と出力します。
3.PHPUtilプラグイン関係の記事の一覧
PHPUtil関係のその他の記事は、以下のリンクから参照できます。
- PHPUtilプラグイン(その1・概要とインストール)
- PHPUtilプラグイン(その2・ファイルの読み込み)
- PHPUtilプラグイン(その3・日時関係の処理)
- PHPUtilプラグイン(その4・ユーザーエージェントの判断)
- PHPUtilプラグイン(その5・変数の基本)
- PHPUtilプラグイン(その6・変数の計算)
- PHPUtilプラグイン(その7・配列の利用)
- PHPUtilプラグイン(その8・配列関係の関数)
- PHPUtilプラグイン(その9・ハッシュの利用)
- PHPUtilプラグイン(その10・GET/POSTされた値を得る)
- PHPUtilプラグイン(その11・条件判断前半)
- PHPUtilプラグイン(その12・条件判断後半)
- PHPUtilプラグイン(その13・一定回数の繰り返し)
- PHPUtilプラグイン(その14・配列/ハッシュの出力)
- PHPUtilプラグイン(その15・条件による繰り返し)
- PHPUtilプラグイン(その16・繰り返しを途中で抜ける)
- PHPUtilプラグイン(その17・関数の実行)
- PHPUtilプラグイン(その18・各種のグローバルモディファイア)