CodeIgniter中的多条件WHERE子句

5 php mysql codeigniter

我想删除一些像核心PHP中的查询这样的数据

WHERE user_id=$id AND sender_id=$send_id OR user_id=$send_id AND sender_id=$id
Run Code Online (Sandbox Code Playgroud)

所以我在CodeIgniter中尝试使用Active Record,如下所示:

$this->db->where('user_id ', $id);
$this->db->or_where('user_id ', $send_id);
$this->db->where('sender_id ', $send_id);
$this->db->or_where('sender_id ', $id);
Run Code Online (Sandbox Code Playgroud)

但它给了我错误的结果.我究竟做错了什么?

cry*_*c ツ 9

$this->db->where(array('user_id' => $id, 'sender_id' => $send_id));
$this->db->or_where(array('user_id' => $send_id, 'sender_id' => $id));
Run Code Online (Sandbox Code Playgroud)

您希望将关联数组传递给每个关联数组,它将AND在查询中的数组中的每个元素之间使用,并使用->or_where()OR在查询中使用an .文档中提供了更多信息.