<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="mmres://user_interface_reference.css" rel="stylesheet" type="text/css">
<title>CFIF</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
   <div id="説明">
   <table cellpadding="0" cellspacing="0" border="0" width="100%" class="main">
      <tr> 
         <td valign="top" class="name">CFIF</td>
         <td valign="top" nowrap class="compatibility">&nbsp;</td>
      </tr>
      <tr>
         <td colspan="2" class="divider"><img src="dwres:18084" width="100%" height="1"></td>
      </tr>


    </td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="description"><span class="title">説明</span>
<p>
CFML で簡単な条件ステートメントや複合条件ステートメントを作成できます。式、変数、関数の戻り値、または文字列をテストします。オプションで cfelse タグと cfelseif タグを組み合わせて使用します。
</p>
    </td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="CLEARSEPARATION">&nbsp;</td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="description"><span class="title">カテゴリ</span>
<p>
フロー制御タグ
</p>
  <tr>
    <td valign="top" colspan="2" class="CLEARSEPARATION">&nbsp;</td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="syntax"><span class="title">シンタックス</span><pre>&lt;cfif expression&gt;
   HTML タグおよび CFML タグ
&lt;cfelseif expression&gt;
   HTML タグおよび CFML タグ
&lt;cfelse&gt;
   HTML タグおよび CFML タグ
&lt;/cfif&gt;
</pre>    </td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="CLEARSEPARATION">&nbsp;</td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="description"><span class="title">関連項目</span>
<p>
cfelse、cfelseif、cfabort、cfbreak、cfexecute、cfexit、cflocation、cfloop、cfswitch、cfthrow、cftry
</p>
    </td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="CLEARSEPARATION">&nbsp;</td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="description"><span class="title">使用方法</span>
<p>
cfif タグ内の式の値が true の場合、それ以降のすべてのコードは、cfelseif タグまたは cfelse タグに到達するまで実行され、その後は cfif 終了タグまでスキップされます。false の場合、cfif タグの直後のコードは実行されず、cfelseif タグまたは cfelse タグが存在すればそのコードが実行され、あるいは、cfif 終了タグの後のコードが実行されます。
</p>

<p>
ブール値を返す関数の戻り値をテストするときには、true 条件を明示的に定義する必要はありません。この例では、IsArray 関数を使用しています。
</p>
<pre>&lt;cfif IsArray(myarray)&gt;
</pre>
<p>
関数が成功した場合、IsArray は yes と評価されます。この文字列は、ブール値の true に相当します。true の条件を次のように明示的に定義する方法よりも、この方法をお勧めします。
</p>
<pre>&lt;cfif IsArray(myarray) IS True&gt;
</pre>
<p>
このタグには終了タグが必要です。 
</p>
    </td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="CLEARSEPARATION">&nbsp;</td>
  </tr>
  <tr>
    <td valign="top" colspan="2" class="description"><span class="title">例</span>
<p>
この例では、変数をシャープ記号で囲んでいます。これは必須ではありません。 
</p>
<pre>&lt;!--- この例では、cfif、cfelse、および cfelseif の相互作用を示します。 ---&gt;
&lt;!----- 最初に、データを取得するクエリーを実行します。 -----&gt; 
&lt;cfquery name=&quot;getCenters&quot; datasource=&quot;cfdocexamples&quot;&gt; 
   SELECT Center_ID, Name, Address1, Address2, City, State, Country,
      PostalCode, Phone, Contact
   FROM Centers
   ORDER by City, State, Name
&lt;/cfquery&gt; 
&lt;p&gt;CFIF には、1 つの条件または一連の条件に基づいて 
条件論理式を実行する機能があります。 
&lt;p&gt;たとえば、グループ別のスニペットデータソースからセンターのリストを出力し、 
&lt;b&gt;IF&lt;/b&gt; City = San Diego の場合にのみ表示します。 
&lt;hr&gt; 
&lt;!---- CFIF を使って、クエリーを出力する時の条件をテストします。 -----&gt; 
&lt;p&gt;San Diego 市内には次のセンターがあります。 
&lt;cfoutput query=&quot;getCenters&quot;&gt; 
      &lt;cfif Trim(City) is &quot;San Diego&quot;&gt; 
         &lt;br&gt;&lt;b&gt;名前/住所: &lt;/b&gt;#Name#, #Address1#, #City#, #State#
         &lt;br&gt;&lt;b&gt;連絡先: &lt;/b&gt; #Contact#
         &lt;br&gt; 
      &lt;/cfif&gt; 
&lt;/cfoutput&gt; 
&lt;hr&gt; 
&lt;p&gt;複数の条件を考慮する場合は、 
San Diego &lt;b&gt;OR&lt;/b&gt; Santa Ana という形式でセンターのリストを要求することができます。この条件に合致す
るセンターがない場合は、
CFELSE を使用して、他のセンターの名前と都市
のみを表示することができまます。 
&lt;p&gt;特定された場所 (Santa Ana や San Diego) の位置を指定するための、 
ネストされた CFIF の使用方法に注意してください。
&lt;!----- CFIF を使って、複数のオプションに対して条件選択肢を指定します。
ネストされた CFIF にも注意してください。 ---&gt; 
&lt;p&gt;San Diego または Santa Ana にあるセンターの詳細な情報が表示されます。 
他のセンターはすべてイタリックで示されます。 
&lt;cfoutput query=&quot;getCenters&quot;&gt; 
   &lt;cfif Trim(City) is &quot;San Diego&quot; OR Trim(City) is &quot;Santa Ana&quot;&gt; 
      &lt;h4&gt;次の都市の主要センター 
         &lt;cfif Trim(City) is &quot;San Diego&quot;&gt; 
            San Diego
         &lt;cfelse&gt; 
            Santa Ana
         &lt;/cfif&gt; 
         &lt;/h4&gt; &lt;b&gt;名前/住所 : &lt;/b&gt;#Name#, #Address1#, #City#, #State#
         &lt;br&gt;&lt;b&gt;連絡先 : &lt;/b&gt; #Contact#&lt;br&gt;
   &lt;cfelse&gt; 
      &lt;br&gt;&lt;i&gt;#Name#, #City#&lt;/i&gt;
   &lt;/cfif&gt; 
&lt;/cfoutput&gt; 
&lt;hr&gt; 
&lt;p&gt;最後に、CFELSEIF を使って、多数の条件を実行し、 
さまざまな出力を生成することができます。CFCASE および CFSWITCH を使用すると、
この動作をより的確に表現することができます。 
&lt;!--- CFIF を CFELSEIF と併用して、
   条件に複数の分岐を指定します。 ---&gt; 
&lt;cfoutput query=&quot;getCenters&quot;&gt; 
   &lt;cfif Trim(City) is &quot;San Diego&quot; OR Trim(City) is &quot;Santa Ana&quot;&gt; 
      &lt;br&gt;&lt;i&gt;#Name#, #City#&lt;/i&gt; (このセンターは
            &lt;cfif Trim(City) is &quot;San Diego&quot;&gt;San Diego にあります。
            &lt;cfelse&gt;Santa Ana
            &lt;/cfif&gt;) 
         &lt;cfelseif Trim(City) is &quot;San Francisco&quot;&gt; 
            &lt;br&gt;&lt;i&gt;#Name#, #City#&lt;/i&gt; (このセンターは、San Francisco にあります。)
         &lt;cfelseif Trim(City) is &quot;Suisun&quot;&gt; 
            &lt;br&gt;&lt;i&gt;#Name#, #City#&lt;/i&gt; (このセンターは Suisun にあります。)
         &lt;cfelse&gt; &lt;br&gt;&lt;i&gt;#Name#&lt;/i&gt;
            &lt;b&gt;検索した都市にあるセンターではありません。&lt;/b&gt;
         &lt;/cfif&gt; 
&lt;/cfoutput&gt; 
</pre>
         </td>
      </tr>
   </table>
   </div>

  </body>
</html>
