laravel中的一些简单实用功能
作者:gaoziyuecj 发布时间:2024-05-13 09:51:57
标签:laravel,实用,功能
前言
N年前 Laravel 刚面世时,的确让很多人眼前一亮,众人惊呼原来 PHP 代码还可以写得这么简洁优雅。
本文主要介绍的是关于laravel中的一些简单实用功能,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧
让lumen的dd() dump()像laravel一样优雅
composer require symfony/var-dumper
获取执行的sql语句
可查看sql where参数等
public function index()
{
DB::connection()->enableQueryLog(); // 开启查询日志
DB::table('posts')->paginate(5); //要查看的sql
$queries = DB::getQueryLog(); // 获取查询日志
dd($queries); // 即可查看执行的sql,执行的时间,传入的参数等等
}
只能查看简单的sql不能看到传入的参数
DB::table('posts')->toSql();
查询sql记录
如果,你想要将日志文件保存在 storage/logs 目录中。需要更新: app/Providers/AppServiceProvider.php 里的 boot() 函数
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use DB;
use Log;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
//
// 新增代码
DB::listen(function ($query) {
Log::info(
$query->sql,
$query->bindings,
$query->time
);
});
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
}
Laravel 如何在模型事件中获取某字段修改前的值
Issue::saving(function(Issue $issue){
if ($issue->isDirty('title')) {
$user = Auth::user()->username;
$oldTitle = $issue->getOriginal('title'); // 原始值
$newTitle = $issue->title; // 新值
ActionLog::log("$user 把标题 $oldTitle 修改为 $newTitle");
}
});
来源:https://segmentfault.com/a/1190000016677264
0
投稿
猜你喜欢
- 本文首先介绍了Python中的模块的概念,谈到了一个模块往往由多个模块组成,然后通过具体实例,分析了模块重载的相关内容,具体介绍如下。模块是
- 需要ping一个网段所有机器的在线情况,shell脚步运行时间太长,用python写个多线程ping吧,代码如下:#!/usr/bin/py
- 一、安装相关的模块首先第一步的话我们需要安装相关的模块,通过pip命令来安装pip install gif另外由于gif模块之后会被当做是装
- 原理:建立一个任务队列,然多个线程都从这个任务队列中取出任务然后执行,当然任务队列要加锁,详细请看代码import threadingimp
- 在图片上右击设置你想放在的目录补充知识:pycharm没有sciview窗口的解决(换专业版pycharm!)只有专业版才有科学模式,too
- 一个方便的特性是你可以给一个视图指定默认的参数。 这样,当没有给这个参数赋值的时候将会使用默认的值。例子:# urls.pyfrom dja
- 前言在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息。python内
- 被AJAX中DOM的操作郁闷了好几天,今天总算搞明白了,自学就是苦啊,苦的一把鼻涕一把泪的,把教训些出来,给后来者提个醒,老鸟就不要看了。下
- Selenium一、简介selenium是一个用于Web应用自动化程序测试的工具,测试直接运行在浏览器中,就像真正的用户在操作一样selen
- 在使用可视化树的过程中,报错了。说是‘dot.exe'not found in path原代码:# import tools nee
- 本文实例讲述了python针对mysql数据库的连接、查询、更新、删除操作。分享给大家供大家参考,具体如下:连接一 代码import pym
- 可能是由于Django使用的MySQLdb库对Python3不支持,我们用采用了PyMySQL库来代替,导致出现各种坑,特别是执行以下2条命
- 1 将文件保存到服务器本地upload.html<!DOCTYPE html><html lang="en&qu
- 需求:Python检测URL状态,并追加保存200的URL代码一:#! /usr/bin/env python#coding=utf-8im
- 我就废话不多说了,大家还是直接看代码吧!import requestsimport jsonraw = {}headers中添加上conte
- 前文介绍了Oracle 中实现数据透视表的几种方法,今天我们来看看在 MySQL/MariaDB 中如何实现相同的功能。本文使用的示例数据可
- 本文介绍在Anaconda环境中,安装Python语言pydot与graphviz两个模块的方法。最近进行随机森林(RF)的树的可视化操作,
- 准备本文环境信息:软件版本CentOSCentOS 7.4MySQL8.0.x安装前先更新系统所有包sudo yum update安装1.
- Django在执行python manage.py makemigrations的时候一切正常但是执行python manage.py mi
- 1、一次二次多项式拟合一次二次比较简单,直接使用numpy中的函数即可,polyfit(x, y, degree)。2、指数幂数拟合curv