我刚开始学习CodeIgniter 4。我的查询总是生成NULL,我不知道为什么。如何查看生成的SQL Select命令,就像Codeigniter 3一样?
在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());
8条答案
按热度按时间ie3xauqp1#
这将显示最终查询:
neskvpey2#
在CI 4中,参考Doc
可以使用
getLastQuery()
作为mjqavswn3#
这段代码将帮助你获得codeigniter 4中的最后一个查询。
ldfqzlk84#
你可以使用getQuery Select它将返回查询SELECT命令。
siotufzp5#
这对我很有效
$this->db
不能直接从控制器访问,但如果您有任何Model
示例,则可以完全访问db
对象。alen0pnh6#
将此代码添加到类中
kx5bkwkv7#
以下代码将在CI 4中工作
nwlls2ji8#
只需使用
$this->db->getLastQuery();
即可