问题描述:laravel where 条件拼接 Like出错,搜索不到要搜索的内容。

问题代码:

        // 作物
$crop_class_id = $request->crop_class_id;
if(!empty($crop_class_id)){
$where['crop_class_id'] = intval($crop_class_id);
}
// 标题
$title = $request->title;
if(!empty($title)){
// 这里的where获取不到like条件
$where['title'] = ['like', '%'.$title.'%'];
}

正确代码:

        // 作物
$crop_class_id = $request->crop_class_id;
if(!empty($crop_class_id)){
$where['crop_class_id'] = intval($crop_class_id);
}
// 标题
$title = $request->title;
if(!empty($title)){
// 如果拼接where条件存在比较符号,则不能指定key
$where[] = ['title', 'like', '%'.$title.'%'];
}

整体代码:

// 获取文章列表
// @url api/user/article?article_class_id=1&status=1&crop_class_id=1
public function index(Request $request)
{
$where = [];
// 分类
$article_class_id = $request->article_class_id;
if(!empty($article_class_id)){
$where['article_class_id'] = intval($article_class_id);
}
// 状态
$status = $request->status;
if(!empty($status)){
$where['status'] = intval($status);
}
// 作物
$crop_class_id = $request->crop_class_id;
if(!empty($crop_class_id)){
$where['crop_class_id'] = intval($crop_class_id);
}
// 标题
$title = $request->title;
if(!empty($title)){
$where[] = ['title', 'like', '%'.$title.'%'];
}
$limit = $request->input('limit');
$deviceRegionList = ArticleModel::where($where)->orderBy('id','desc')->with('user', 'article_class', 'crop_class')->paginate($limit)->toArray();
$returnData = [];
$returnData['msg'] = "查询成功";
$returnData['count'] = $deviceRegionList['total'];
$returnData['current_page'] = $deviceRegionList['current_page'];
$returnData['data'] = $deviceRegionList['data'];
return success($returnData);
}

参考连接:

  1. https://www.cnblogs.com/djwhome/p/9176338.html

Laravel where条件拼接,数组拼接where条件的更多相关文章

  1. js数组去重 数组拼接 替换数组中的指定值 递归数组 判断数组中是否存在指定值 数组求和 根据条件判数组值

    这是学习过程中记录的一些关于数组操作的常用属性或方法,记录一下方便以后使用. // 数组去重 var arr1 = [1,1,2,3,4,5,6,3,2,4,5,'a','b','c','a',6,7 ...

  2. php部分--例子:租房子(复选框的全选、数组拼接成字符串、设置复选框的name值、)

    1.链接数据库 <?php include("DBDA.class.php"); $db=new DBDA(); $sql="select * from fangz ...

  3. Java基础知识强化44:StringBuffer类之把数组拼接成指定格式的字符串的案例

    1. 先看案例代码如下: package cn.itcast_07; /* * 把数组拼接成一个字符串 */ public class StringBufferTest2 { public stati ...

  4. PHP 数组拼接成字符串

    PHP[知识分享] 数组拼接成字符串 <?php // 格式: [二维数组] Array ( [0] => Array ( [topicid] => 1 ) [1] => Ar ...

  5. python numpy 数组拼接

    我就写一下我遇到的,更多具体的请看Python之Numpy数组拼接,组合,连接 >>> aarray([0, 1, 2],       [3, 4, 5],       [6, 7, ...

  6. numpy库数组拼接np.concatenate的用法

    concatenate功能:数组拼接 函数定义:numpy.concatenate((a1, a2, ...), axis=0, out=None)

  7. 当update的查询条件是数组的时候,upsert会失效

    不管是findOneAndUpdate还是update方法,只要他们的查询条件是数组,upsert就会失效,比如: //这段代码只会更新已存在的数据,不存在的不会插入 tagModel.update( ...

  8. numpy数组 拼接

    转载自:https://blog.csdn.net/zyl1042635242/article/details/43162031 数组拼接方法一 首先将数组转成列表,然后利用列表的拼接函数append ...

  9. js 数组 添加或删除 元素 splice 创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素 filter

    里面可以用 箭头函数 splice         删除 增加 数组 中元素 操作数组 filter 创建新数组  检查指定数组中符合条件的所有元素

  10. 【Matlab开发】matlab删除数组中符合条件的元素与散点图绘制

    [Matlab开发]matlab删除数组中符合条件的元素与散点图绘制 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ matlab删除数组中符合条件的元素 如 ...

随机推荐

  1. 在React中修改antd的样式

    1.在Component的Radio中加个style={radioStyle}. <RadioGroup> <Radio style={radioStyle} value={}> ...

  2. easyUI之numberspinner数字微调框

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  3. curl获取远程页面

    // 创建一个新cURL资源$ch = curl_init(); // 设置URL和相应的选项$options = array(CURLOPT_URL => 'http://www.w3csch ...

  4. flutter AnimatedPositioned

    Positioned 的动画版. 只有是 Stack 的 child 时才能工作. 如果 child 的 size 在动画过程会改变,则 AnimatedPositioned 是很好的选择 doubl ...

  5. 002-tomcat目录简介、应用部署【自动部署 ② 控制台部署 ③ 自定义部署】

    一.目录及功能 主目录下有bin,conf,lib,logs,temp,webapps,work 7个文件夹 1.1.bin目录[重要] bin目录主要是用来存放tomcat的命令,主要有两大类,一类 ...

  6. Qt编写自定义控件16-魔法老鼠

    前言 五一期间一直忙着大屏电子看板软件的开发,没有再去整理控件,今天已经将大屏电子看板的所有子窗口都实现了任意停靠和双击独立再次双击最大化等功能,过阵子有空再写一篇文章介绍其中的技术点.魔法老鼠控件, ...

  7. C# 关于App.config

    App.config是winfrom等程序的应用程序配置文件,用来存放一些参数. app.config只会在应用程序启动时加载一次. 当程序在运行中修改app.config中的参数是不会生效,必须要重 ...

  8. mysql 数据库的基本操作

    day 41 MySql 一. 为啥使用数据库? 因为之前使用文件(Excel)管理数据, 但是数据量特别大的时候,使用Excel管理 的话, 就比较的麻烦了因此引入一个新的数据管理软件 : 数据库软 ...

  9. 检测网站的JS报错

    window.onerror = function (errorMessage, scriptURI, lineNumber, columnNumber, errorObj) { var contex ...

  10. prometheus 监控 zookeeper

    1.zookeeper的规则 [root@do1cloud01 prometheus]# cat zookeeper.yml rules: - pattern: "org.apache.Zo ...