我刚刚开始学习Codeigniter 4。我的查询总是生成NULL,我不知道为什么。我如何才能像Codeigniter 3一样看到生成的SQL Select命令?
在Codeigniter 3中,此命令执行以下工作:
echo $this->db->last_query();
这是我在Codeigniter 4中的控制器代码,我需要它来获取生成的查询:
$cityModel = new CityModel();
$cities = $cityModel
->select('city.name AS cityName')
->select('county.name AS countryName')
->select('province.name AS provinceName')
->join('province', 'city.province_id = province.id', 'left')
->join('county', 'city.county_id = county.id', 'left')
->result();
**更新:**我尝试了以下代码,但它返回一个空字符串:
var_export((string)$cityModel->db->getLastQuery());
7条答案
按热度按时间mzmfm0qo1#
此时应显示最终查询:
tct7dpnv2#
在CI 4中,参考Doc
您可以使用
getLastQuery()
作为igetnqfo3#
你可以使用getCompiledSelect它将返回查询SELECT命令。
2j4z5cfb4#
这段代码将帮助您获取codeigniter 4中的最后一个查询。
ikfrs5lh5#
以下代码将在CI 4中工作
zbwhf8kr6#
只需使用
$this->db->getLastQuery();
即可mcdcgff07#
将此代码添加到类中