Как сохранить несколько записей в таблице, используя торт php

Как я могу сохранить несколько записей в таблице, используя торт php? Вот код, который я написал до сих пор.

$err_counter = 1;
$data3 = array();
foreach ($data2['MembershipTime'] as $k => $values) 
     {
            $batch_id = $lastid;
            $day = $values['day'];
            $skip =  (!empty($values['skip']))  ? $values['skip'] : "";
            $h1 =  (!empty($values['h1']))  ? $values['h1'] : "00";
            $m1 =  (!empty($values['m1']))  ? $values['m1'] : "00";
            $h2 =  (!empty($values['h2']))  ? $values['h2'] : "00";
            $m2 =  (!empty($values['m2']))  ? $values['m2'] : "00";

            $data3['BatchesTimes']['batch_id'] = $batch_id;
            $data3['BatchesTimes']['day'] = $day;
            $data3['BatchesTimes']['skip'] = $skip;
            $data3['BatchesTimes']['h1'] = $h1;
            $data3['BatchesTimes']['m1'] = $m1;
            $data3['BatchesTimes']['h2'] = $h2;

            $obj = $this->BatchesTimes->save($data3);
     }

1 ответ

Решение

Здесь с примером моего собственного массива я собираюсь объяснить вам. Вы меняете переменные в соответствии с именем в вашем массиве.

$this->ModelName->saveAll($data3);

Если вышеприведенное решение не работает, значит попробуйте приведенное ниже решение, указанное в решенном примере.

В вашем случае $dataMulti = $data3; Пример:

 $dataMulti = array(
        array(
            'Info' =>
            array(
                'note' => "This is note 1",
                'delete_flag' => "f"
            )
        ),
        array(
            'Info' =>
            array(
                'note' => "This is note 2",
                'delete_flag' => "f"
            )
        ),
        array(
            'Info' =>
            array(
                'note' => "This is note 3",
                'delete_flag' => "f"
            )
        ),
    );

Сохраните множество записей за один раз. У нас есть два способа:

1. $infoModel->saveAll($dataMulti);

или же

2. $infoModel->saveMany($dataMulti);

Надеюсь, что это работает.

Другие вопросы по тегам