使用来自http://www.phpactiverecord.org/的phpactiverecord,除了查看数据库服务器的查询日志之外,有没有办法查看生成的SQL查询以进行调试?
答案 0 :(得分:11)
在您的模型中:
echo self::connection()->last_query;
模特之外:
YourModelName::connection()->last_query;
答案 1 :(得分:3)
在扩展ActiveRecord \ Model的类中,最后一个查询位于ClassName :: connection() - > last_query中。 e.g。
class Todo extends ActiveRecord\Model {
public static function test() {
Todo::all();
var_dump(Todo::connection()->last_query);
}
}
答案 2 :(得分:2)
有几种不同的方法来获取没有参数的SQL语句:
static::connection()->last_query
#returns对连接的最后查询static::table()->last_sql
#same as first 要获取带参数集的完整语句,您需要将自己的函数(see php.net comment)置于角色并将其插入到php-activerecord / lib / Connection.php :: query函数中。可能不是生产的好主意。