这是我的Controller =>愿望清单功能
$data = array(
'user_id' => $this->_user_id
);
$order_by = "id";
$query = $this->Database_model->get_data('wishlist','*', $data, $order_by);
print_r($query);
结果:
Array
(
[0] => stdClass Object
(
[id] => 1
[item_id] => 2
[user_id] => 2
[tarix] => 2018-03-13 00:00:00
)
[1] => stdClass Object
(
[id] => 2
[item_id] => 15
[user_id] => 2
[tarix] => 2018-03-13 00:00:00
)
[2] => stdClass Object
(
[id] => 3
[item_id] => 10
[user_id] => 2
[tarix] => 2018-03-13 00:00:00
)
)
现在我希望得到所有" 项目"表数据WHERE id = 所有这些" item_id" 在数组内。
我尝试使用foreach创建新数组并将所有item_id推入其中,但在Codeigniter中我无法进行查询。
答案 0 :(得分:1)
你可以这样做: 在您的控制器中
$data = array(
'user_id' => $this->_user_id
);
$order_by = "id";
$query = $this->Database_model->get_data('wishlist','*', $data, $order_by);
$where = array();
foreach ($query as $key => $value)
array_push($where, $value->item_id); // Must be item_id
$my_items = $this->Database_model->get_custom_items('items', $where);
在你的模特中
public function get_custom_items($table, $where)
{
$this->db->select('*');
$this->db->where_in('id', $where); // Must be id
return $this->db->get($table)
}