随笔分类 - laravel
摘要:laravel 策略模式、工厂模式使用案例 在 Laravel 中使用设计模式来对接多个物流服务商(如菜鸟、顺丰、极兔),可以使用 策略模式 或 工厂模式 来实现动态调用不同物流接口的功能。下面的示例展示了如何使用策略模式来实现这个需求,通过一个父类,多个子类来处理不同的物流服务商,并根据单号选择对
阅读全文
摘要:laravel singleton 单例模式使用 1、简介 在 Laravel 中,singleton 是用于将一个类注册为单例模式的服务,也就是说,整个应用程序生命周期内,Laravel 只会实例化一次该服务。这个服务可以在多个地方共享同一个实例,而不是每次请求时都创建一个新的实例。 2、使用场景
阅读全文
摘要:/** * 批量插入并在遇到重复键时更新 * @param array $values * @return bool */ public static function insertOnDuplicate(array $values) { if (empty($values)) { return t
阅读全文
摘要:1、按英文排序 $r = [ ['color'=>'b', 'color_zh'=>'波'], ['color'=>'c', 'color_zh'=>'吃'], ['color'=>'a', 'color_zh'=>'啊'], ['color'=>'d', 'color_zh'=>'得'], ]
阅读全文
摘要:分组后统计数量 $query = DB::table("accessories_outbound as a") ->join("accessories_outbound_details as b", 'b.acc_outbound_no', '=', 'a.acc_outbound_no') ->g
阅读全文
摘要:DB::listen 在Laravel框架中,DB::listen是一个监听器,用于监听数据库查询。这段代码注册了一个闭包(匿名函数)作为监听器,当执行数据库查询时,闭包会被调用,并且传递一个包含查询信息的对象作为参数。在这个例子中,传递给闭包的参数是 $query,它包含了执行的SQL语句和其他相
阅读全文
摘要:1、需求 将相同 apply_id 的 apply_remark 用 ; 拼接 $r = [ ['apply_id' => 1, 'apply_remark' => 'xxx'], ['apply_id' => 1, 'apply_remark' => 'xxx2'], ['apply_id' =>
阅读全文
摘要:原文:https://learnku.com/articles/56684 1、配置 env 文件夹 删除自带的.env 等文件 添加 env 文件夹 并添加.dev.env, .stage.env, .prod.env 文件 2、修改 app.php //... //... //忽略上面代码 $a
阅读全文
摘要:在处理两个并发请求同时更新同一条 MySQL 数据的情况时,你需要考虑并发冲突的问题,以确保数据的一致性和完整性。以下是一些解决方法: 在 Laravel 中,你可以使用数据库事务来处理并发更新。在事务中,你可以执行一系列操作,并在操作完成后提交或回滚事务。如果两个请求同时尝试更新相同的数据,一个请
阅读全文
摘要:### 1、简介 laravel导入导出常规使用`maatwebsite/excel`,在处理大数据时效率低、占用过多内存。 而`box/spout`效率高、占用内存少,更适合处理大数据的导入导出。 ### 2、安装 ```php composer require box/spout ``` > "
阅读全文
摘要:原文:https://www.jianshu.com/p/a56b79ed2cb2 1、首先要做一些设置 首先在模型类中要使用SoftDeletestrait,该trait为软删除提供一系列相关方法,具体可参考源码Illuminate\Database\Eloquent\SoftDeletes,此外
阅读全文
摘要:18个Laravel8数据库查询优化建议 原文:https://learnku.com/laravel/t/61384 如果应用运行缓慢或存在大量数据库查询,请按照以下性能优化提示来缩短应用的加载时间。 1. 检索大型数据集 本提示主要侧重于提高处理大型数据集时应用的内存使用率。 处理大的集合时,分
阅读全文
摘要:原文:https://learnku.com/articles/62503 简单模式 第一种情况,我称之为传导关联表 国家有很多用户,用户有很多帖子 countries id - integer name - string users id - integer country_id - intege
阅读全文
摘要:whereExists 方法允许你使用 where exists SQL 语句。whereExists 方法接收一个 闭包 作为参数,该闭包获取一个查询构建器实例,从而允许你定义放置在 「exists」 字句中的查询: $users = DB::table('users') ->whereExist
阅读全文
摘要:1、select结果 数组元素为对象,需要将对象转为数组,方便使用。 $sql = "select id, order_code, content from oms_order_log where id < 10"; $data = DB::select($sql); dd($data); arra
阅读全文
摘要:1、场景 二维数组中,如果要取出满足多个字段条件的数据时,通常使用遍历的方式。 laravel 提供collection keyBy 可以将多个字段格式化作为键名,不用写foreach遍历。 2、例子 需求:获取 班级=one,学生姓名=zhangsan 的年龄 $arr = [ ['class'=
阅读全文
摘要:官方文档(译):https://segmentfault.com/a/1190000021690551 1、基本 1.1、l5-repository 是什么 laravel5 的一个扩展包,抽象数据库层,主要用于封装数据查询和存储逻辑。 2、安装 安装 composer require prettu
阅读全文
摘要:原文:`https://learnku.com/articles/10172/laravel-super-good-code-prompt-tool-laravel-ide-helper` Laravel IDE Helper:`https://github.com/barryvdh/laravel
阅读全文
摘要:1、事件&订阅 理解 理解:打工 我(订阅者)今天去打工,上午去跑摩的(事件1),下午去送外卖(事件2) 监听和订阅的区别就是,1个监听只对应1个事件,1个订阅可对应多个事件。 以下例子:操作库存(订阅),采购商品-增加库存(事件1),用户下单-扣减库存(事件2) 2、生成事件和订阅 php art
阅读全文