更新时间:2022-12-28 07:46:18
从CI维基:
cignighter ActiveRecord的功能的$ C $ 允许您创建SQL查询 相对简单和 数据库独立,但有 对于ISNO包括具体的支持 括号中的SQL查询。
The codeignighter ActiveRecord feature allows you to create SQL queries relatively simply and database-independant, however there isno specific support for including parenthesis in an SQL query.
例如,当你想要一个WHERE语句来simmilarly出来了如下因素:
For example when you want a where statement to come out simmilarly to the folowing:
WHERE (field1 = value || field2 = value) AND (field3 = value2 || field4 = value2)
这可以通过将一个字符串CI-> DB->其中()函数,在这种情况下,你会想逃离专门的值来避开这一情况。
This can be worked around by feeding a string to the CI->db->where() function, in this case you will want to specifically escape your values.
请参阅下面的例子:
$value=$this->db->escape($value);
$value2=$this->db->escape($value2);
$this->db->from('sometable');
$this->db->where("($field = $value || $field2 = $value)");
$this->db->where("($field3 = $value2 || $field4 = $value2)");
$this->db->get();
一个simmilar解决方法可以用于类似的条款:
A simmilar workaround can be used for LIKE clauses:
$this->db->where("($field LIKE '%$value%' || $field2 LIKE '%$value%')");
$this->db->where("($field3 LIKE '%$value2%' || $field4 LIKE '%$value2%')");