Heim > PHP-Framework > Laravel > Einführung in superpraktische Funktionen im Laravel-Framework

Einführung in superpraktische Funktionen im Laravel-Framework

不言
Freigeben: 2018-10-15 14:37:09
nach vorne
2740 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine Einführung in die superpraktischen Funktionen des Laravel-Frameworks. Ich hoffe, dass er für Freunde in Not hilfreich ist.

Machen Sie Lumens dd() dump() so elegant wie Laravel

composer require symfony/var-dumper
Nach dem Login kopieren

Holen Sie sich die ausgeführte SQL-Anweisung

Kann SQL-Where-Parameter usw. anzeigen.

    public function index()
    {
        DB::connection()->enableQueryLog(); // 开启查询日志
        
        DB::table('posts')->paginate(5);  //要查看的sql

        $queries = DB::getQueryLog(); // 获取查询日志

        dd($queries); // 即可查看执行的sql,执行的时间,传入的参数等等
    }
Nach dem Login kopieren

Kann nur einfaches SQL anzeigen und die eingehenden Parameter nicht sehen

DB::table('posts')->toSql();
Nach dem Login kopieren

SQL-Datensätze abfragen

Wenn möchten Sie die Protokolldateien im Verzeichnis storage/logs speichern. Muss aktualisiert werden: Die boot()-Funktion in app/Providers/AppServiceProvider.php

<?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()
    {
        //
    }
}
Nach dem Login kopieren

Laravel So erhalten Sie den Wert eines Feldes vor der Änderung im Modellereignis

Issue::saving(function(Issue $issue){
    if ($issue->isDirty(&#39;title&#39;)) {
        $user = Auth::user()->username;
        $oldTitle = $issue->getOriginal(&#39;title&#39;); // 原始值
        $newTitle = $issue->title;                // 新值
        ActionLog::log("$user 把标题 $oldTitle 修改为 $newTitle");
    }
});
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonEinführung in superpraktische Funktionen im Laravel-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage