如何在 Codeigniter 4 中获取最后一个查询? [重复]

问题描述 投票:0回答:1

这是我当前的代码:

public function index()
{
    $tbl = 'm_trx';
    $db = \Config\Database::connect();
    $builder = $db->table($tbl);
    
    $data = [];

    $cols = "{$tbl}.*";
    $builder->select($cols);

    $data = $builder->get()->getResult();
    $asd = [
        'message' => $builder->getLastQuery(),
        'data' => $data,
    ];
    return $this->respond($asd);
}

但它返回错误

"message": "Call to undefined method CodeIgniter\\Database\\MySQLi\\Builder::getLastQuery()",

如果我将

$builder->getLastQuery()
更改为
$builder->db->getLastQuery()
它会返回此错误

"message": "Cannot access protected property CodeIgniter\\Database\\MySQLi\\Builder::$db",

php codeigniter activerecord query-builder codeigniter-4
1个回答
1
投票

您只需通过

$db
而无需通过
$builder->db

试试这个

$db->getLastQuery()
© www.soinside.com 2019 - 2024. All rights reserved.