這篇文章主要給大家介紹了關於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"); } });
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對神馬文庫的支持。