#php #codeigniter #codeigniter-4
Вопрос:
В codeigniter 4 есть помощник Бд или конструктор запросов, когда print_r($db->getLastQuery())
он возвращает целые методы и другую информацию или когда echo $db->getLastQuery()
он возвращает последний запрос. Как одна и та же функция возвращает разные выходные данные в одно и то же время ??
Ответ №1:
Вероятно, потому getLastQuery
, что возвращает объект, который реализует магический метод __toString, и с echo
переменной преобразуется в строку, в то время print_r
как просто печатает необработанный объект.
Комментарии:
1. Это правильно. Возвращаемое значение
getLastQuery
на самом деле является экземпляромCodeIgniterDatabaseQuery
; у этогоQuery
класса естьtoString
метод, который неявно вызывается, когда PHP пытается преобразоватьecho
аргумент из объекта в строку.