使用http://www.phpactiverecord.org/中的 phpactiverecord ,除了查看数据库服务器的查询日志之外,还有什么方法可以查看生成的 SQL 查询以进行调试?
问问题
7196 次
3 回答
14
在您的模型中:
echo self::connection()->last_query;
在您的模型之外:
YourModelName::connection()->last_query;
于 2013-08-28T06:15:20.260 回答
3
在扩展 ActiveRecord\Model 的类中,最后一个查询在 ClassName::connection()->last_query 中。例如
class Todo extends ActiveRecord\Model {
public static function test() {
Todo::all();
var_dump(Todo::connection()->last_query);
}
}
于 2013-04-02T08:26:45.167 回答
3
获取不带参数的 SQL 语句的几种不同方法:
static::table()->conn->last_query
#返回对连接的最后一个查询static::connection()->last_query
#和第一个一样static::table()->last_sql
#this 将只返回发送到查找器函数的最后一个查询,并且不包括关联查询
要获得带有参数集的完整语句,您需要扮演自己的函数(参见 php.net 注释)并将其插入到 php-activerecord/lib/Connection.php::query 函数中。可能不是生产的好主意。
于 2015-04-30T15:45:12.800 回答