TP5打印sql的几种方式

zhuan:https://www.it610.com/article/1280025294710784000.htm

获取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);
});
posted @ 2021-04-13 17:37  星云惊蛰  阅读(1536)  评论(0)    收藏  举报