简而言之,我需要一种改变的方法:
Array
(
[CrmOrder] => Array
(
[crm_schedule_id] => 59
)
)
...进入此(使用PHP)....
Array
(
[CrmOrder] => Array
(
[0] => Array
(
[crm_schedule_id] => 59
)
)
)
我需要这样做的原因是因为我想将CakePHP saveAll()函数与我从Wizard Component获得的数组一起使用。 Cake的saveAll需要数据更深一层,因为CrmOrder属于CrmPerson,它有很多CrmOrder。
由于这不一定是Cake特定的问题,我也在这个问题中添加'php'标签。
答案 0 :(得分:2)
$input = array( /* your data */ );
$output = $input;
$output['CrmOrder'] = array($output['CrmOrder']);
答案 1 :(得分:2)
您应该能够利用FormHelper生成预期的输出,如下所示:
echo $this->Form->input('CrmOrder.0.crm_schedule_id');
(请注意点符号中的0
。请参阅this page in the manual上的第二个代码块。)
答案 2 :(得分:1)
$newArray = array();
foreach( $oldArray as $key => $value ) {
$newArray[ $key ] = array( $value );
}
答案 3 :(得分:0)
Demo:
$data = array(
'CrmOrder' => array(
'crm_schedule_id' => 59,
),
);
$data = array_map(function($v){return array($v);}, $data);
var_dump($data);