如何在cakephp中保存不同的数组数据

时间:2015-06-24 07:24:18

标签: arrays cakephp

我的数组与普通的cakephp数组不同。 现在我想使用foreach循环保存这个数据数组。

[Data] => Array
        (
            [type_id] => Array
                (
                    [0] => 4
                    [1] => 5
                    [2] => 4
                    [3] => 3
                )

            [data_id] => Array
                (
                    [0] => 1
                    [1] => 3
                    [2] => 2
                    [3] => 1
                )

            [price] => Array
                (
                    [0] => 12
                    [1] => 213
                    [2] => 212
                    [3] => 23343
                )

            [amount] => Array
                (
                    [0] => 121
                    [1] => 342
                    [2] => 45454
                    [3] => 3243
                )

        )

我只想要一个foreach循环。

2 个答案:

答案 0 :(得分:2)

您希望先重组数组,然后使用saveMany()保存重组数组: -

$data = array();
foreach ($array['ProductCharge'] as $col => $value) {
    foreach ($value as $key => $val) {
        $data[$key]['ProductCharge'][$col] = $val;
    }
}

$this->ProductCharge->saveMany($data);

最好使用saveMany()而不是在foreach循环中保存每条记录。

可能有Hash方法重构数据而不需要foreach循环,但无法想象哪种方法可以正常工作。

答案 1 :(得分:0)

我不知道你到目前为止尝试过哪种方法。

$this->Model->saveMany($arrayVariable)应该可以保存您的数据。