cake_icon.png

CakePHPの「Set::combine」を使ってコンボボックスやチェックボックス用のリストを作る時に
複数のカラムをまとめて表示したい時があったので調べてみたら。。。

あるじゃないですか♪

配列で渡してあげると良いようです。

array(フォーマット,データ1,データ2,データ3);

のようなカタチになります。

array(
    1=>'商品A',
    1=>'商品B',
    1=>'商品C',
);


array(
    1=>'商品A(100x100)',
    1=>'商品B(200x100)',
    1=>'商品C(300x100)',
);

$items = Set::combine($items, '{n}.Item.id',  array('{0} ({1}x{2})', 
'{n}.Item.name','{n}.Item.w','{n}.Item.h'));