因为版本更新问题,tp5.0还能使用的
$where['createtime'] = ['between', [$time_1, $time_2],'AND']
无法使用了,会直接报不能使用数组的错,应该使用字符串,所以如果tp5.1以上还想用这种方法堆叠where条件最后再查询的时候以->where($where)
也没有办法以这种方法使用了,但是可以使用另外一种写法,
$range = $time_1 . ',' . $time_2
$where[] = ['createtime', 'between', $range];
这样就可以了。
这种写法有两个需要注意的地方
1,如果查询条件中有字段使用了这样的写法,那么其他的字段也必须使用这样的方法,不然会报错
比如如果要搜索年龄
要从
$where['age'] = $age;
变成
$where[] = ['age', '=', $age];
写法上要统一,至于中间的等号能不能去掉,我还没有试过,你们可以试一下
2,$range 是以逗号隔开的字符串