Laravel where条件拼接,数组拼接where条件
问题描述: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);
- }
参考连接:
- https://www.cnblogs.com/djwhome/p/9176338.html
Laravel where条件拼接,数组拼接where条件的更多相关文章
- js数组去重 数组拼接 替换数组中的指定值 递归数组 判断数组中是否存在指定值 数组求和 根据条件判数组值
这是学习过程中记录的一些关于数组操作的常用属性或方法,记录一下方便以后使用. // 数组去重 var arr1 = [1,1,2,3,4,5,6,3,2,4,5,'a','b','c','a',6,7 ...
- php部分--例子:租房子(复选框的全选、数组拼接成字符串、设置复选框的name值、)
1.链接数据库 <?php include("DBDA.class.php"); $db=new DBDA(); $sql="select * from fangz ...
- Java基础知识强化44:StringBuffer类之把数组拼接成指定格式的字符串的案例
1. 先看案例代码如下: package cn.itcast_07; /* * 把数组拼接成一个字符串 */ public class StringBufferTest2 { public stati ...
- PHP 数组拼接成字符串
PHP[知识分享] 数组拼接成字符串 <?php // 格式: [二维数组] Array ( [0] => Array ( [topicid] => 1 ) [1] => Ar ...
- python numpy 数组拼接
我就写一下我遇到的,更多具体的请看Python之Numpy数组拼接,组合,连接 >>> aarray([0, 1, 2], [3, 4, 5], [6, 7, ...
- numpy库数组拼接np.concatenate的用法
concatenate功能:数组拼接 函数定义:numpy.concatenate((a1, a2, ...), axis=0, out=None)
- 当update的查询条件是数组的时候,upsert会失效
不管是findOneAndUpdate还是update方法,只要他们的查询条件是数组,upsert就会失效,比如: //这段代码只会更新已存在的数据,不存在的不会插入 tagModel.update( ...
- numpy数组 拼接
转载自:https://blog.csdn.net/zyl1042635242/article/details/43162031 数组拼接方法一 首先将数组转成列表,然后利用列表的拼接函数append ...
- js 数组 添加或删除 元素 splice 创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素 filter
里面可以用 箭头函数 splice 删除 增加 数组 中元素 操作数组 filter 创建新数组 检查指定数组中符合条件的所有元素
- 【Matlab开发】matlab删除数组中符合条件的元素与散点图绘制
[Matlab开发]matlab删除数组中符合条件的元素与散点图绘制 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ matlab删除数组中符合条件的元素 如 ...
随机推荐
- 省份-城市-区域三级联动【struts2 + ajax +非数据库版】
package loaderman; /** * 实体,封装省份和城市 */ public class Bean { private String province;//省份 private Stri ...
- 5.Linux文件权限
Linux用户类别 root:这是系统特权用户类,他们都有访问root登录账号的权限 owner:这是实际拥有文件的用户 group:这是共享文件的组访问权的用户类的用户组名称 world:这是不属于 ...
- k-means聚类分析范例程序
K-Means聚类算法原理参考以下链接: https://www.cnblogs.com/pinard/p/6164214.html 2. 传统K-Means算法流程 在上一节我们对K-Means的原 ...
- DRF视图-5个扩展类以及GenericAPIView基类
视图 5个视图扩展类 视图拓展类的作用: 提供了几种后端视图(对数据资源进行曾删改查)处理流程的实现,如果需要编写的视图属于这五种,则视图可以通过继承相应的扩展类来复用代码,减少自己编写的代码量. 这 ...
- 如何简单的编译v8动态库
按照google v8的官方提供的方法,在国内,完成编译简直太难了. 还好nodejs提供离线编译能力,稍微改造一下可以从node源码中直接编译纯净的v8动态库. 直接把v8解压出来的py/gpy文件 ...
- MySQL知识篇-SQL2
1 数据库基本操作? (1) 查看数据库 show databases; (2)切换到指定的数据库 use dbname; (3)创建数据库 create database 库名 charset=ut ...
- Go语言入门篇-JSON&http调用
一.Decoder /(一)Decoder func DecoderExample(){ const jsonStream = ` { "Name" : "Ed" ...
- SQL ----- JDBC 用ID查询某条记录
package demo; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; ...
- freeRTOS学习一
freeRTOS中的链表结构: /* * Definition of the only type of object that a list can contain. 链表中的节点 */ struct ...
- NLP 对抗方法整理
NLP中对抗应用 1. 分词 , 可以用GAN来做,消除不同分词器的差异性 2. 风格迁移, 这个在图像中应用较多,在NLP中同样可行 3. 提高问答系统/阅读理解的性能. 4. 机器翻译应该也可以做 ...