Thinkphp3.2.3在SQL執行錯誤時查看SQL語句

一般使用 getLastSql() 方法來查看剛執行過的SQL,但有時SQL語法錯誤,沒法使用 getLastSql() 方法。php

能夠在SQL執行前將它打印出來sql

拼裝出最後可執行SQL的位置在ui

ThinkPHP/Library/Think/Db/Driver.class.phpthis

public function buildSelectSql($options=array()) {
    if(isset($options['page'])) {
        // 根據頁數計算limit
        list($page,$listRows)   =   $options['page'];
        $page    =  $page>0 ? $page : 1;
        $listRows=  $listRows>0 ? $listRows : (is_numeric($options['limit'])?$options['limit']:20);
        $offset  =  $listRows*($page-1);
        $options['limit'] =  $offset.','.$listRows;
    }
    $sql  =   $this->parseSql($this->selectSql,$options);
    return $sql;
}

能夠在return 前輸出 $sql 變量或寫入日誌。日誌

相關文章
相關標籤/搜索