我们在数据查询过程中会经常使用到AND、OR多条件查询,如果采用原生SQL语句很容易实现,那在thinkphp中如何使用框架提供的where、wherOr实现呢,今天我们来介绍一种利用闭包的实现方式:
假设数据表 data_table,包含 a、b、c、d等字段,我们要查询的条件是:
(a = 1 OR b = 2) AND (c <> 3 OR d = 4)
//查询条件组1
$map_1['a'] = 1;
$map_1['b'] = 2;
//查询条件组2
$map_2['c'] = ['neq', 3];
$map_2['d'] = ['eq', 4];
$result =