【发布时间】:2013-04-15 00:06:20
【问题描述】:
我有从外部数据库获取数据的功能,我得到特定的电影信息,例如 id、名称、流派等。现在,如果电影流派是动画,我只想将这一流派添加到数据库中。现在我可以使用 isset 解决问题,但是我将拥有类型为 null 的 db 条目,我想避免这种情况。解决这个问题的最佳方法是什么?使用 foreach 循环?
$records = array(
array('film_id' => $movies['id'], 'genre_id' => $movies['genre'][0]),
array('film_id' => $movies['id'], 'genre_id' => $movies['genre'][1]),
array('film_id' => $movies['id'], 'genre_id' => $movies['genre'][2])
);
$this->db->insert_batch('film_genre', $records);
【问题讨论】:
-
如何查询外部数据库?您是否可以选择流派与指定流派(例如动画)匹配的记录,而不是返回匹配所有流派的记录?如果没有,那么您建议遍历记录可能会起作用。
-
我得到了基于电影标题的特定查询,所以我无法选择其他任何内容。
-
正如您已经建议的那样,使用 foreach 循环。您可以过滤结果(从 $records 数组中删除一条记录),或者改为 insert_batch,使用常规插入,一次一条记录(取决于您的条件)。
标签: php codeigniter activerecord codeigniter-2