我正在使用codeigniter的** $ this-> db-> insert_batch('mytable',$ data); **但它给我的错误是:
A PHP Error was encountered
Severity: Warning
Message: array_keys() expects parameter 1 to be array, string given
Filename: database/DB_active_rec.php
Line Number: 1113
我的控制器代码(只是其中的一部分):
foreach ($arrAllergy as $allergy) {
$allergyData[] = array(
"user_id" => $userid,
"allergy_name" => $allergy
);
}
$this->register_model->addAllergy($allergyData);
模特:
public function addAllergy($decoded_data) {
$this->db->insert_batch('allergies', $decoded_data);
}
我已经搜索了很多这个错误,但没有找到任何解决方案。任何帮助都将受到高度赞赏。
答案 0 :(得分:1)
insert_batch
需要
key =>
的值对key是数据库的列名
,值为值
您的array
必须格式化为
Array
(
[0] => Array
(
[column1] => value
[column2] => value
[column3] => value
)
[1] => Array
(
[column1] => value
[column2] => value
[column3] => value
)
)
print_r
您的数组,它看起来像什么..