2007/07/09

[coldfusion]新人研修-list

listの紹介をしたいと思います。

listとは、配列、構造体とは違って、ある区切り文字を使って、複数の文字や数字を、一つの変数にセットする方式です。

例えば、

<CFSET hoge = "2,3,4,5">

というように、上の場合、「,」で数字を区切って、一つの変数にセットしています。

区切り文字は、「,」だけではなく「;」や「:」も使うことができます。

「;」の場合

<CFSET hoge = "2;3;4;5">

「:」の場合

<CFSET hoge = "2:3:4:5">

そして、これを表示したい場合は、cfloopのリストループと呼ばれる手法を使ってループを行いながら表示をします。

仮に、

<CFSET hoge = "2,3,4,5">

で見てみましょう。

これをループさせたい場合、

<CFLOOP index="test" list="#hoge#" delimiters =",">
  #test#
</CFLOOP>

と書きます。

上のループを日本語に訳してみると、hogeというリストを、それぞれの値を「,」で区切って、一つずつtestという変数にセットしていくという感じでしょうか。

もちろん、区切り文字を「;」や「:」にすることもできます。

「;」の場合

<CFLOOP index="test" list="#hoge#" delimiters =";">
  #test#
</CFLOOP>

「:」の場合

<CFLOOP index="test" list="#hoge#" delimiters =":">
  #test#
</CFLOOP>

と書くことができます。

また、CFのリストは、配列に変換したり、配列からリストに変換することができます。
前者は、ListToArray関数、後者は、ArrayToList関数を使って実装することができます。

配列で詰まったときは、listに、listで苦戦したときは、配列に変換してみたりすることで、道が開けるかもしれません。

0 コメント:

コメントを投稿