たまにはColdFusionネタを…(:3_ヽ)_
連想配列内で配列を持たせる方法について紹介します。
意外と便利なので良く使っています。
【サンプル】
<cfscript> // サンプルデータ groopA1 = ["GroupA", "Tanaka"]; groopA2 = ["GroupA", "Yamada"]; groopB = ["GroupB", "Saito"]; groopC1 = ["GroupC", "Ito"]; groopC2 = ["GroupC", "Suzuki", "20"]; groopC3 = ["GroupC", "Kondo"]; players = [groopA1, groopA2, groopB, groopC1, groopC2, groopC3]; testStruct = StructNew(); for (i=1; i<=ArrayLen(players); i++) { if (Not StructKeyExists(testStruct, players[i][1])) { StructInsert(testStruct, players[i][1], ArrayNew(1)); } ArrayAppend(testStruct['#players[i][1]#'], players[i]); } WriteDump(testStruct); </cfscript>
上記のコードより作成された連想配列は画像の通りです。
配列については全て同じ要素数でなければならないわけではないので、
キー項目さえ用意しておけば色々と使えます。
また、連想配列内に連想配列を持たせることもできるので、
工夫によってはとんでもないことが可能です。
(※複雑にし過ぎると、後々大変になりますが…)