thinkphp 并且 或 条件
时间: 2024-03-03 19:52:44 浏览: 145
thinkphp
在 ThinkPHP 中,可以使用 `where` 方法来构建查询条件,包括使用 `AND` 和 `OR` 连接多个查询条件。
使用 `AND` 连接多个查询条件时,可以在 `where` 方法中传入一个数组,数组中的每个元素表示一个查询条件,例如:
```php
$map['_complex'] = array(
'name' => 'thinkphp',
'title' => 'thinkphp',
'_logic' => 'OR'
);
$map['status'] = 1;
$list = Db::name('table')->where($map)->select();
```
以上示例中,`$map` 数组中的 `_complex` 元素表示一个复合查询条件,其中 `name` 和 `title` 字段的值都等于 `'thinkphp'`,使用 `OR` 连接这两个条件。`status` 字段的值也必须等于 `1`,使用 `AND` 连接复合条件和 `status` 字段的条件。
使用 `OR` 连接多个查询条件时,可以使用 `whereOr` 方法,例如:
```php
$list = Db::name('table')
->where('name', 'thinkphp')
->whereOr('title', 'thinkphp')
->where('status', 1)
->select();
```
以上示例中,使用 `where` 方法设置 `name` 字段的值必须等于 `'thinkphp'`,使用 `whereOr` 方法设置 `title` 字段的值必须等于 `'thinkphp'`,两个条件使用 `OR` 连接。同时,还需使用 `where` 方法设置 `status` 字段的值必须等于 `1`,使用 `AND` 连接前面的条件和 `status` 字段的条件。
阅读全文