Laravel 5 ですべてのデータベースリクエストを表示する方法

WBOY
リリース: 2016-06-20 12:28:19
オリジナル
911 人が閲覧しました

説明

Laravel は特に柔軟なデータベース操作スキームを備えており、すべての SQL ステートメントを取得する簡単な方法を紹介します。

1. QueryLog をオンにします

最初に次のメソッドを呼び出して、フレームワークに SQL リクエストの記録を開始するように指示する必要があります:

DB::enableQueryLog();
ログイン後にコピー

このコードを配置することを検討できます。 BeforeMiddleware ミドルウェア (こちらのドキュメントを参照) で、次のコマンドを使用して BeforeMiddleware を生成します。

php artisan make:middleware BeforeMiddleware
ログイン後にコピー

上記のコマンドは、ハンドル メソッド内に app/Http/Middleware/BeforeMiddleware.php ファイルを生成します。このファイルの

public function handle($request, Closure $next){    DB::enableQueryLog();    return $next($request);}
ログイン後にコピー

2. QueryLog の取得

QueryLog をオンにした後、次のメソッドを使用して実行された SQL を取得できます。

$queries = DB::getQueryLog();
ログイン後にコピー

Ifすべてを取得したい場合は、QueryLog のコードを AfterMiddleware に配置できます。

次のコマンドを使用して AfterMiddleware を作成します (ドキュメントはこちら):

php artisan make:middleware AfterMiddleware
ログイン後にコピー

このファイルの handle メソッド内で、app/Http/Middleware/AfterMiddleware.php ファイルが生成されます。

public function handle($request, Closure $next){    $response = $next($request);    //retrieve all executed queries    $queries = DB::getQueryLog();    //code to save query logs in a file    //return response    return $response;    }
ログイン後にコピー
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!