TP5打印查看sql语句的几种方式

获取sql语句 用于调试、排错、优化

  • getLastSql
    $res = Db::table('staff')->field('id,salary')->where('id','>',1)
                ->group('salary')->having('salary > 5000')->select();
    $sql = Db::table('staff')->getLastSql();
    halt($sql);
  • select(false)
$res = Db::table('staff')->field('id,salary')->where('id','>',1)
            ->group('salary')->having('salary > 5000')->select(false);
halt($res);
  • fetchSql
$res = Db::table('staff')->field('id,salary')->where('id','>',1)
            ->group('salary')->having('salary > 5000')->fetchSql()->select();
halt($res);
  • buildSql
$res = Db::table('staff')->field('id,salary')->where('id','>',1)
            ->group('salary')->having('salary > 5000')->buildSql();
halt($res);
  • 监听sql
Db::listen(function($sql, $time, $explain){
    
    
    // 记录SQL
    echo $sql. ' ['.$time.'s]';
    // 查看性能分析结果
    dump($explain);
});

猜你喜欢

转载自blog.csdn.net/Z_PTOPONE/article/details/120901744