牛骨文教育服务平台(让学习变的简单)
博文笔记

ThinkPHP多字段匹配模糊查询

创建时间:2017-07-11 投稿人: 浏览次数:1933
<?php
(一)模糊查询的多字段之间关系为ADN
public function findWithInput()
{
    $SellerLocation = D("SellerLocation");
    $input = I("input");
    if (!$input) {
        $this->ajaxReturn(array("result" => "false", "data" => "Unable to get your input parameters"), "JSON");//无法获取用户输入参数
    } else {
//多字段之间是AND关系
        $where["store_name & street & province & city & county & town & specific_address"] = array("like", "%$input%");
        $list = $SellerLocation->where($where)->fetchSql(true)->select();//只返回SQL语句,并不进行真实查询
//生成SQL语句为:SELECT * FROM `maigade_seller_location` WHERE ( (`store_name` LIKE "%1219%") AND (`street` LIKE "%1219%") AND (`province` LIKE "%1219%") AND (`city` LIKE "%1219%") AND (`county` LIKE "%1219%") AND (`town` LIKE "%1219%") AND (`specific_address` LIKE "%1219%") )
        if ($list != null) {
            $this->ajaxReturn(array("result" => "success", "data" => $list), "JSON");
        } elseif ($list == null) {
            $this->ajaxReturn(array("result" => "false", "data" => "According to the information you have entered is not found in the vicinity of the shop"), "JSON");
        } else {
            $this->ajaxReturn(array("result" => "false", "data" => "Select store error"), "JSON");
        }

    }
}

(二)模糊查询的多字段之间关系为OR
public function findWithInput()
{
    $SellerLocation = D("SellerLocation");
    $input = I("input");
    if (!$input) {
        $this->ajaxReturn(array("result" => "false", "data" => "Unable to get your input parameters"), "JSON");//无法获取用户输入参数
    } else {
//多字段之间是OR关系
        $where["store_name | street | province | city | county | town | specific_address"] = array("like", "%$input%");
        $list = $SellerLocation->where($where)->fetchSql(true)->select();//只返回SQL语句,并不进行真实查询
//生成SQL语句为:SELECT * FROM `maigade_seller_location` WHERE ( `store_name` LIKE "%1219%" OR `street` LIKE "%1219%" OR `province` LIKE "%1219%" OR `city` LIKE "%1219%" OR `county` LIKE "%1219%" OR `town` LIKE "%1219%" OR `specific_address` LIKE "%1219%" )
        if ($list != null) {
            $this->ajaxReturn(array("result" => "success", "data" => $list), "JSON");
        } elseif ($list == null) {
            $this->ajaxReturn(array("result" => "false", "data" => "According to the information you have entered is not found in the vicinity of the shop"), "JSON");
        } else {
            $this->ajaxReturn(array("result" => "false", "data" => "Select store error"), "JSON");
        }

    }
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。