| STRUCTSORT | |
| 説明
構造体のトップレベルのキーを取り出してソートした配列を返します。ソートはアルファベット順か数値順で、構造体の任意の要素の値に基づいて行うことができます。 |
|
| 戻り値
トップレベルのキー名 (文字列) の配列。指定したサブ要素の値に基づいてソートされています。 |
|
| カテゴリ
構造体関数 |
|
関数のシンタックスStructSort(base, sortType, sortOrder, pathToSubElement) |
|
| 関連項目
構造体関数、『ColdFusion MX 開発ガイド』の第5章の「配列と構造体の使用」 の「構造体関数」 |
|
| パラメータ
|
|
| 使用方法
pathToSubElement 文字列では、配列表記はサポートされていません。また、構造体のサブ構造体だけがサポートされます。 この関数では、構造体そのものに対するソートや変更は行われません。 |
|
例<cfscript>
salaries = StructNew() ;
employees = StructNew() ;
departments = StructNew() ;
for ( i=1; i lt 6; i=i+1 )
{
salary = 120000 - i*10000 ;
salaries["employee#i#"] = salary ;
employee = StructNew() ;
employee["salary"] = salary ;
// employee.salary = salary ;
employees["employee#i#"] = employee ;
departments["department#i#"] = StructNew() ;
departments["department#i#"].boss = employee ;
}
</cfscript>
<cfoutput>
<p>給与でソートした従業員のリスト (テキスト順):<br>
1) #ArrayToList( StructSort( salaries ) )#<br>
2) #ArrayToList( StructSort( salaries, "text", "ASC" ) )#<br>
3) #ArrayToList( StructSort( salaries, "textnocase", "ASC" ) )#<br>
4) #ArrayToList( StructSort( salaries, "text", "DESC" ) )#<br>
<p>給与でソートした従業員のリスト (数値順):<br>
5) #ArrayToList( StructSort( salaries, "numeric", "ASC" ) )#<br>
6) #ArrayToList( StructSort( salaries, "numeric", "DESC" ) )#<br>
<p>給与でソートした従業員のリスト (サブフィールドによる):<br>
7) #ArrayToList( StructSort( employees, "numeric", "DESC", "salary" ) )#<br>
8) #ArrayToList( StructSort( employees, "text", "ASC", "salary" ) )#<br>
<p>給与でソートした部門のリスト (サブサブフィールドによる):<br>
9) #ArrayToList( StructSort( departments, "text", "ASC", "boss.salary" ) )#<br>
</cfoutput>
<!--- 無効な要素を追加し、それによって例外が発生することをテスト --->
<p><p>
<cfset employees[ "employee4" ] = StructNew()>
<cftry>
<cfset temp = StructSort( employees, "text", "ASC", "salary" )>
<cfoutput>ここに来たとしたら問題です。本来は上の行で例外が発生しているはずです。<br>
</cfoutput>
<cfcatch type="any">
<cfoutput>
ERROR:<b>予定どおりエラーとなりました。</b><br>
#cfcatch.message# - #cfcatch.detail#<br>
</cfoutput>
</cfcatch>
</cftry>
|
|
| BASE | |
| 1 つのフィールド (連想配列) を持つ構造体です。 | |
| SORTTYPE | |
| SORTORDER | |
| PATHTOSUBELEMENT | |
| 文字列、または文字列を含んでいる変数です。 | |
| ソートのキーとなる要素の値にアクセスするためのパスです。トップレベルの各キーからの パスで指定します。デフォルト値は、なしです (トップレベルのエントリ自身の値に基づい てソートが行われます)。 | |