CFSWITCH |
説明 渡された式を評価し、式の結果にマッチする cfcase タグに制御権を渡します。オプションで、cfdefaultcase タグをコーディングすることもできます。一致する cfcase タグの値がなければ、このタグに制御権が渡されます。
カテゴリ フロー制御タグ
シンタックス
    <cfswitch
       expression = "expression">
          cfcase タグ
          cfdefaultcase タグ (省略可能)
    </cfswitch>
関連項目 cfcase、cfdefaultcase、cfabort、cfloop、cfbreak、cfexecute、cfexit、cfif、cflocation、cfrethrow、cfthrow、cftry、『ColdFusion MX 開発ガイド』の第2章の「CFML の要素」 の「cfswitch、cfcase、および cfdefaultcase」
ヒストリ ColdFusion MX: cfdefaultcase タグの配置の必要条件が変更されました。cfdefaultcase タグを cfswitch ステートメント内の任意の場所に配置できます。最後の項目である必要はありません。
使用方法 このタグには終了タグが必要です。このタグ内のすべてのコードは cfcase または cfdefaultcase タグで囲む必要があります。そうでない場合、エラーが発生します。 このタグの後には、cfcase タグを 1 つ以上指定します。オプションで、cfdefaultcase タグを指定することもできます。このタグを使用すると、cfcase タグおよび cfdefaultcase タグから一致する代替タグを選択してそのタグにジャンプし、cfcase の開始タグと終了タグの間にあるコードを実行できます。 cfswitch タグは、一連の cfif や cfelseif タグよりもパフォーマンスが良く、読み取りやすいコードで記述できます。
例
    <!--- この例では、cfswitch および cfcase を使用して、CFML で case ステートメントを実行する方法を示し
    ます。 --->
    <cfquery name = "GetEmployees" dataSource = "cfdocexamples">
       SELECT  Emp_ID, FirstName, LastName, EMail, Phone, Department
       FROM Employees
    </cfquery>

    <h3>cfswitch の例</h3>
    <!--- クエリーを出力し、cfswitch を使用することで、cfloop コンストラクトを使わずに出力を分類します。 --->
    <p>case 条件が満たされるたびに、特定の情報がプリントされます。
    case 条件が満たされない場合は、デフォルトの情報が出力されます。</p>
    <cfoutput query="GetEmployees">
    <cfswitch expression="#Trim(Department)#">
       <CFCASE VALUE="Sales">
          #FirstName# #LastName# は <b>営業部</b>です。<br><br>
       </cfcase>
       <cfcase value="Accounting">
          #FirstName# #LastName# は <b>経理部</b>です。<br><br>
       </cfcase> <cfcase value="Administration">
          #FirstName# #LastName# は <b>管理部</b>です。<br><br>
       </cfcase>
       <cfdefaultcase>
          #FirstName# #LastName# は営業部、経理部、または管理部
             ではありません。<br><br>
       </cfdefaultcase>
    </cfswitch>
    </cfoutput>

EXPRESSION |
| 必須
スカラ値を生成する ColdFusion 式です。ColdFusion により、整数、実数、ブール値、および日付が数値に変換されます。たとえば、True、1、1.0 はすべて同じです。