【ColdFusion】連想配列と配列を組み合わせて使う方法

たまには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>

dump結果
上記のコードより作成された連想配列は画像の通りです。
配列については全て同じ要素数でなければならないわけではないので、
キー項目さえ用意しておけば色々と使えます。

また、連想配列内に連想配列を持たせることもできるので、
工夫によってはとんでもないことが可能です。
(※複雑にし過ぎると、後々大変になりますが…)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です