[英]How to create Codeigniter batch insert array
如何创建一个 CI 批量插入数组,就像
$data = array(
array(
'title' => 'My title' ,
'name' => 'My Name' ,
'date' => 'My date'
),
array(
'title' => 'Another title' ,
'name' => 'Another Name' ,
'date' => 'Another date'
)
);
从我的正常数组是
Array
(
[0] => Array
(
[track_id] =>
[camp_id] => 1
[field_name] => email_title
[field_value] => sample
)
[1] => Array
(
[track_id] =>
[camp_id] => 1
[field_name] => email_date
[field_value] => 2013-07-02
)
[2] => Array
(
[track_id] =>
[camp_id] => 1
[field_name] => email_template
[field_value] => 2
)
)
试试这个:
$data = array(
array(
'title' => 'My title' ,
'name' => 'My Name' ,
'date' => 'My date'
),
array(
'title' => 'Another title' ,
'name' => 'Another Name' ,
'date' => 'Another date'
)
);
$this->db->insert_batch('mytable', $data);
有关更多信息,请阅读此处
这是您的数据在控制器
$dataForDb[0]['track_id']=$data['track_id'];
$dataForDb[0]['camp_id']=$data['camp_id'];
$dataForDb[0]['field_name']=$data['field_name'];
$dataForDb[0]['field_value']=$data['field_value'];
$dataForDb[1]['track_id']=$data['track_id'];
$dataForDb[1]['camp_id']=$data['camp_id'];
$dataForDb[1]['field_name']=$data['field_name'];
$dataForDb[1]['field_value']=$data['field_value'];
$dataForDb[2]['track_id']=$data['track_id'];
$dataForDb[2]['camp_id']=$data['camp_id'];
$dataForDb[2]['field_name']=$data['field_name'];
$dataForDb[2]['field_value']=$data['field_value'];
$fid=$this->model_modelName->functionName($dataForDb);
并在模型处插入数据作为批量插入
$this->db->insert_batch($table, $data);
你的阵列没问题。 只需将您的数组放入一个变量中
$data=array();//put your array
接着
$this->db->insert_batch('yourTable', $data);
如果您遇到任何问题,请告诉我。
您的正常数组结构与批量插入的数组结构匹配..
所以只需使用批量插入查询来插入数据。
$this->db->insert_batch('yourTable', $data);
$data 是你的普通数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.