Cakephp Hash 组合连接两个字段

Cakephp Hash combine concatenate two fields

如何使用 cakephp 2.5 和 Hash:combine 连接 select 框中的两个字段?

今天我的名字是:

$banks = Hash::combine($banks, '{n}.Bank.id', '{n}.Bank.name');

我需要名称和标识符,我试过这个:

$banks = Hash::combine($banks, '{n}.Bank.id', '{n}.Bank.name {n}.Bank.identifier');

但是它 return NULL。

我怎样才能拥有:名称 - 标识符?

也尝试在模型中连接两个字段,但无法在名称和标识符之间添加 hiffen。

您可以为 $keyPath$valuePath 提供数组。如果这样做,第一个值将用作格式 string,用于其他路径提取的值:

$result = Hash::combine(
    $a,
    '{n}.User.id',
    array('%s: %s', '{n}.User.Data.user', '{n}.User.Data.name'),
    '{n}.User.group_id'
);
/* $result now looks like:
    Array
    (
        [1] => Array
            (
                [2] => mariano.iglesias: Mariano Iglesias
            )
        [2] => Array
            (
                [14] => phpnut: Larry E. Masters
            )
    )
*/

$result = Hash::combine(
    $a,
    array('%s: %s', '{n}.User.Data.user', '{n}.User.Data.name'),
    '{n}.User.id'
);
/* $result now looks like:
    Array
    (
        [mariano.iglesias: Mariano Iglesias] => 2
        [phpnut: Larry E. Masters] => 14
    )
*/

有关模式的详细信息,请参阅 CookBook > Hash