【发布时间】:2015-03-15 21:45:21
【问题描述】:
我一直在试图找出一种方法来记录我在 Zend Framework 1 中使用的 Eloquent ORM 中的 SQL 查询。我遇到了以这种方式调用的 getQueryLog() 方法:
$queries = DB::getQueryLog();
我发现 Illuminate\Database\Connection 包含 getQueryLog() 方法,所以我尝试执行以下操作:
use Illuminate\Database\Connection as DB;
class IndexController
{
.
.
.
public function indexAction()
{
// do stuff (e.g. fetch/update/create rows)
$questions = Questions::all()
.
.
$queries = DB::getQueryLog();
var_dump($queries); exit;
.
// render view
}
}
但是,我收到以下通知,它返回 NULL:Notice: Undefined property: IndexController::$queryLog in /var/www/qasystem/vendor/illuminate/database/Illuminate/Database/Connection.php on line 918
NULL
有人可以建议我如何在 Laravel 之外使用它吗?我在网上搜索过,看不到我需要做的任何不同的事情,尽管我怀疑大多数示例将在 Laravel 中使用。另外, Illuminate\Database\Connection 是正确的类吗?谢谢
【问题讨论】:
-
这个工作
Capsule::getQueryLog()吗? -
你使用的是哪个版本的 laravel?
-
Capsule::getQueryLog()不起作用。我没有使用 Laravel,我在 Zend Framework (1) 中使用 Eloquent。 -
Questions::getConnection()->getQueryLog()工作吗? -
你有什么工作吗?试图找到相同的!