好吧,我试图弄清楚如何使用insert_batch
我正在尝试这样的事情
function checkBoxes($data,$category)
{
$insert=array(
'story'=>$data
'category'=>$category
);
$this->db->insert_batch('stories_to_categories',$insert);
}
对于$data我有数组,可以有值和键的范围
(
[0] => 1
[1] => 6
[2] => 14
[3] => 15
[4] => 18
)
对于类别,我将只有一个值,例如2
我尝试达到我的习惯
story category
------------------------
1 2
6 2
14 2
15 2
18 2
有人可以帮助我,我很痛苦!
解决方法:
您可以通过对代码进行一些修改来实现此目的.
CI文档显示,批处理插入期望使用一个嵌入有关联数组的数组:每个要插入的新行都有1个关联数组,将列映射到值.
实际上,您可能希望为$insert建立一个像这样的数组:
$insert=array(
array('story'=>1, 'category'=>2).
array('story'=>6, 'category'=>2).
array('story'=>14, 'category'=>2).
array('story'=>15, 'category'=>2).
array('story'=>18, 'category'=>2).
);
function _insert_($data, $category='2', $options=array('data'=>'story', 'category'=>'category'))
{
$return = array();
foreach ($data as $value)
{
$return[] = array($options['data']=>$value, $options['category']=>$category);
}
return $return;
}
然后,您可以看到以下内容:
$this->db->insert_batch('stories_to_categories',_insert_($data));
希望这可以帮助.
在下面找到参考:
在这里查看CodeIgniter参考:CodeIgniter Active Record: #Insert
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。