Home >Backend Development >PHP Tutorial >Expressions commonly used in Where conditions in ThinkPHP
The following brings you an article about expressions commonly used in ThinkPHP Where conditions. The content is quite good, so I will share it with you now and give it as a reference.
Where conditional expression format is:
$map['字段名'] = array('表达式', '操作条件');
where $map is an ordinary array variable, which can be named according to your own needs. The expression in the above format is actually the meaning of operator:
TP Operator | SQL operator | Example | Actual query condition |
---|---|---|---|
eq | = | $map['id'] = array('eq',100); | Equivalent to: $map['id'] = 100; |
neq | != | $map['id'] = array('neq',100); | id != 100 |
gt | > | $map['id'] = array('gt',100); | id > 100 |
egt | >= | $map['id'] = array('egt',100); | id >= 100 |
lt | 7e84ce69e2893793fe0f3da47cfbb417 = array ('like','Admin%'); | username like 'Admin%' | |
between | between and | $map['id'] = array('between','1,8'); | id BETWEEN 1 AND 8 |
not between | not between and | $map['id'] = array('not between','1,8'); | id NOT BETWEEN 1 AND 8 |
in | in | $map['id'] = array('in','1,5,8'); | id in(1,5,8) |
not in | not in | $map['id'] = array('not in ','1,5,8'); | id not in(1,5,8) |
and | $map['id'] = array(array('gt',1),array('lt',10)); | (id > 1) AND (id 89816a4888f1d51663322551e834738f 3) OR (id < 10) | |
xor | When only one of the two inputs is true, the result is true, otherwise it is false. The example is omitted. | 1 xor 1 = 0 | |
Comprehensive expression | $map['id'] = array(' exp','in(1,3,8)'); | $map['id'] = array('in','1,3,8'); |
Supplementary instructions
• Like SQL, ThinkPHP operators are not case-sensitive, and eq is the same as EQ.• between and in conditions support strings or arrays, that is, the following two ways of writing are equivalent:
$map['id'] = array('not in','1,5,8');
$map['id'] = array('not in',array('1','5','8'));
exp Expressionexp in the above table is not an operator, but a comprehensive expression to support more complex condition settings. The operating conditions of exp are not treated as strings and can use any syntax supported by SQL, including using functions and field names.
#exp is not only used for where conditions, but also for data updates, such as: $Dao = M("Article");
//构建 save 的数据数组,文章点击数+1
$data['id'] = 10;
$data['counter'] = array('exp','counter+1');
//根据条件保存修改的数据
$User->save($data);
The above is the This is the entire content of this article. Thank you all for reading. For more related content, please pay attention to the PHP Chinese website!
Related recommendations:
##Detailed explanation of where() usage in ThinkPHP
The above is the detailed content of Expressions commonly used in Where conditions in ThinkPHP. For more information, please follow other related articles on the PHP Chinese website!