這篇文章帶給大家的內容是關於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"); } });
以上是laravel框架超實用的功能介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!