用簡單的英語,你所需要做的就是修改配置/ app.php
找到Datasources
配置和設置'log' => true
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
...
'log' => true, // Set this
]
]
如果你的應用程序處於調試模式,當您的頁面顯示SQ時,您將看到SQL查詢L錯誤。
配置/ app.php
找到Log
配置和添加一個新的日誌類型:如果你沒有調試模式,您可以通過還增加了以下日誌的SQL查詢到一個文件:
'Log' => [
'debug' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'debug',
'levels' => ['notice', 'info', 'debug'],
'url' => env('LOG_DEBUG_URL', null),
],
'error' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'error',
'levels' => ['warning', 'error', 'critical', 'alert', 'emergency'],
'url' => env('LOG_ERROR_URL', null),
],
// Add the following...
'queries' => [
'className' => 'File',
'path' => LOGS,
'file' => 'queries.log',
'scopes' => ['queriesLog']
]
],
你的SQL查詢,現在將寫入您可以在/logs/queries.log
找到一個日誌文件,它可能在CakePHP中3.X多一點的工作,您可能需要使用自定義查詢記錄器CLA SS。我可以問一下你的實際使用案例,也就是你爲什麼需要訪問最後一個查詢? – ndm
我在將數據保存到數據庫時遇到了一些問題,所以我需要它。 – sradha