Laravel5.* 実行された SQL ステートメントを出力します
この記事ではLaravel5.*で実行したSQL文を出力する方法を中心に紹介していますので、興味のある方は参考にしていただければ幸いです。
appProvidersAppServiceProvider.PHP を開き、ブート メソッドに次のコンテンツを追加します
5.2 より前のバージョン
// 先引入DB use DB; // 或者直接使用 \DB:: DB::listen(function($sql, $bindings, $time) { dump($sql); });
5.2 以降
use DB; // 或者直接使用 \DB:: // 只能接受一个参数 QueryExecuted {#84 ▼ +sql: "select * from `posts` where `slug` = ? limit 1" +bindings: array:1 [▶] +time: 0.59 +connection: MySqlConnection {#85 ▶} +connectionName: "mysql" } DB::listen(function($sql) { dump($sql); // echo $sql->sql; // dump($sql->bindings); }); // 如果要放入日志文件中 DB::listen( function ($sql) { // $sql is an object with the properties: // sql: The query // bindings: the sql query variables // time: The execution time for the query // connectionName: The name of the connection // To save the executed queries to file: // Process the sql and the bindings: foreach ($sql->bindings as $i => $binding) { if ($binding instanceof \DateTime) { $sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\''); } else { if (is_string($binding)) { $sql->bindings[$i] = "'$binding'"; } } } // Insert bindings into query $query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql); $query = vsprintf($query, $sql->bindings); // Save the query to file $logFile = fopen( storage_path('logs' . DIRECTORY_SEPARATOR . date('Y-m-d') . '_query.log'), 'a+' ); fwrite($logFile, date('Y-m-d H:i:s') . ': ' . $query . PHP_EOL); fclose($logFile); } );
関連する推奨事項:
ネイティブSQLステートメントを実行するThinkphp実装方法
以上がLaravel5.* 実行された SQL ステートメントを出力しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Web アプリケーションの開発に伴い、PHP 言語は Web 開発で広く使用されています。 PHP8.0 バージョンでは、新しい言語機能である multi-catch ステートメントが導入されました。マルチキャッチステートメントとは何ですか?以前の PHP バージョンでは、開発者は複数の例外タイプを処理するために複数の catch ステートメントを作成する必要がありました。たとえば、次のコード ブロックは 2 つの異なる例外の処理を示しています。

MySQLにデータを挿入するステートメントを実装するにはどうすればよいですか? MySQL データベースを使用する場合、データの挿入は非常に基本的で一般的な操作です。データを挿入することにより、新しいレコードをデータベース テーブルに追加して、業務運営をサポートできます。この記事では、MySQL で INSERT ステートメントを使用してデータ挿入操作を実装する方法を紹介し、具体的なコード例を示します。 MySQL の INSERT ステートメントは、データベース テーブルに新しいレコードを挿入するために使用されます。基本的な構文形式は次のとおりです。 INSERTINTOt

C# で try ステートメントを使用するには、特定のコード例が必要です。C# はオブジェクト指向プログラミング言語であり、try ステートメントは例外をキャプチャして処理するために使用される構造です。 try ステートメントを使用すると、発生する可能性のある例外を処理するコードを作成できるため、プログラムの安定性と信頼性が向上します。この記事では、C# での try ステートメントの使用法を紹介し、読者の理解を助けるためにいくつかの具体的なコード例を示します。 C# では、try ステートメントは try ブロック、catch ブロック、optionalfina で構成されます。

Python は広く使用されている高級プログラミング言語で、学習が簡単で効率的かつ柔軟で、開発者に深く愛されています。 Python では、フロー制御ステートメントはプログラム ロジックの実装の重要な部分です。この記事では、Python でよく使用されるフロー制御ステートメントを紹介し、理解を深めるためのコード例を示します。 Python では、一般的なフロー制御ステートメントには条件ステートメントとループ ステートメントが含まれます。条件付きステートメントは、真または偽の条件に基づいてさまざまなコード ブロックを実行し、実行ブランチを決定および選択するために使用されます。ループステートメントは繰り返しに使用されます

SQL ALTER ステートメントの機能には、特定のコード サンプルが必要です。データベース管理システムでは、ALTER ステートメントはデータベース オブジェクトを変更するために使用される SQL コマンドです。 ALTER ステートメントを使用すると、テーブル、列、インデックス、ビューなどのデータベース オブジェクトを、追加、削除、変更などの操作を含めて変更できます。以下では、ALTER ステートメントの一般的な使用法を詳しく紹介し、関連するコード例を示します。 ALTERTABLE ステートメントは、テーブルの構造を変更するために使用されます。列、制約、インデックスなどを追加、削除、変更できます。

C 言語で Go ステートメントを使用することは、同時実行を実現できる一般的で柔軟なプログラミング手法です。ここでは、C言語のGo文をマスターするためのテクニックを、具体的なコード例とともに紹介します。まず、C 言語で同時実行をシミュレートする方法を理解する必要があります。 C言語では、複数のスレッドを作成することで同時処理を実現できます。マルチスレッド プログラミングでは、pthread ライブラリを使用してスレッドを作成および管理できます。次は、2つのスレッドを作成して同時に実行する簡単なC言語プログラムです。

MySQL でテーブルのロックを解除するステートメントを実装するにはどうすればよいですか? MySQL では、テーブル ロックは、データの整合性と一貫性を保護するために一般的に使用されるロック メカニズムです。トランザクションがテーブルの読み取りおよび書き込みを行っている場合、他のトランザクションはテーブルを変更できません。このロック メカニズムにより、データの一貫性がある程度保証されますが、他のトランザクションがブロックされる可能性もあります。したがって、何らかの理由でトランザクションを続行できない場合は、他のトランザクションを続行できるようにテーブルのロックを手動で解除する必要があります。 MySQL はさまざまな機能を提供します

Pythonをゼロから学ぶには、まずフロー制御文の種類を理解しましょう! Python は、データ分析、人工知能、ネットワーク開発、およびさまざまな科学計算分野で広く使用されているシンプルかつ強力なプログラミング言語です。初心者にとって、基本的なフロー制御文を習得することは、論理的な判断を実現し、プログラムの実行フローを制御するための基礎となるため、非常に重要です。 Python には、順次構造、条件構造、ループ構造という 3 つの主なタイプのフロー制御ステートメントがあります。以下では、これら 3 つのプロセス制御ステートメントを詳細に紹介し、対応するステートメントを示します。
