Symfoware Server WebDBtoolsユーザーズガイド - FUJITSU -
目次 索引 前ページ次ページ

第6章 WebScript拡張タグ> 6.2 実行制御タグ

6.2.6 <!BREAK>

■説明

<!BREAK>は、ラベルに対応するループ処理を中断するタグです。<!FOREACH>、<!WHILE>、および<!FOR>タグ内で有効です。
ラベルが省略された場合は、中断されるループはその<!BREAK>タグを含む最も内側のループになります。このループを「カレントループ」と呼びます。

■構文

<!BREAK [ LABEL=label ] >

■パラメタ

label :

■使用例

◆ラベルを指定しない場合

<!SETVAR LIST '(1,2,3,-4,5,6)'>
<!FOREACH LIST L>
  <!IF 'L < 0'>
    <!BREAK>
  <!/IF>
  <TT>value = <!HREPLACE 'L'></TT><BR>
<!/FOREACH>
    ↓ (表示結果)
  value = 1
  value = 2
  value = 3

◆ラベルを指定する場合

<!SETVAR LIST_1 '(1,2,5,4,3)'>
<!SETVAR LIST_2 '(-1,-2,-3)'>
<!FOREACH LIST_1 L1 LABEL="LOOP1">
  <!FOREACH LIST_2 L2>
    <!IF 'L1 + L2 > 1'>
      <!BREAK LABEL="LOOP1">
    <!/IF>
    <TT>L1 = <!HREPLACE 'L1'>  L2 = <!HREPLACE 'L2'></TT><BR>
  <!/FOREACH>
<!/FOREACH>
    ↓ (表示結果)
  L1 = 1   L2 = -1
  L1 = 1   L2 = -2
  L1 = 1   L2 = -3
  L1 = 2   L2 = -1
  L1 = 2   L2 = -2
  L1 = 2   L2 = -3

ラベル名が指定されても、ラベルに対応するループ処理が存在しない場合は、エラーとなります。
このタグが記述された場所を含むループが複数個あり、それらのループのラベルに同じ値が指定されている場合、そのラベルの値をlabelパラメタに指定して実行することはできません。

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007