_string flexible query

$process = (int)$_POST['process'];
switch ($process) {
    case 0:
        // 全部
        $where['_string'] = ' (`sale_way` = 1 AND `status` in (-2,-1,1,2,3,4))  OR ( `sale_way` = 2 AND `status` in (-2,-1,3,4)) ';
        break;
    case 1:
        // 交易中
        $where['_string'] = ' (`sale_way` = 1 AND `status` in (1,2,3))  OR ( `sale_way` = 2 AND `status` in (3)) ';
        $where['check_status'] = 0;
        break;
    case 2:
        // 平台审核
        $where['status'] = 3;
        $where['check_status'] = ['in','1,2'];
        break;
    case 3:
        // 交易成功
        $where['status'] = 4;
        break;
    case 4:
        // 交易失败
        $where['status'] = ['in','-1,-2'];
        break;
}


$where['a_uid'] = $this->uid; // 默认查询条件

result:

SELECT * FROM `tf_order` WHERE (  (`sale_way` = 1 AND `status` in (-2,-1,1,2,3,4))  OR ( `sale_way` = 2 AND `status` in (-2,-1,3,4))  ) AND `a_uid` = 1 ORDER BY id desc LIMIT 0,10

Guess you like

Origin www.cnblogs.com/jiqing9006/p/11106717.html