在代码点火器中,您可以输入:
$query = $this->db->query("YOUR QUERY");
foreach ($query->result() as $row)
{
echo $row->title;
echo $row->name;
echo $row->body;
}
我想查询方法会返回它所属的对象。我是对的吗?
如果我是,你如何键入返回对象的行?
所以我想知道在查询方法中看起来如何使上述代码正常运行。
public function query($sql) {
// some db logic here with the $sql and saves the values to the properties (title, name and body)
return X
}
换句话说,X应该是什么?
答案 0 :(得分:2)
我没有阅读CodeIgniter源代码,但可以合理地假设$query
是某种代表db结果的类,所以很可能是return $this;
它也可能是:return new Db_ResultSet($data)
或类似的东西。
答案 1 :(得分:1)
该功能位于/system/database/DB_driver.php:244
在成功的查询中,它为应用程序的数据库配置中设置的数据库驱动程序(可能)返回一个新的db结果对象。
ex:CI_DB_mysql_result(位于/system/database/drivers/mysql/mysql_result.php);
换句话说,X应该是什么?
$driver = $this->load_rdriver();
$RES = new $driver();
$RES->conn_id = $this->conn_id;
$RES->result_id = $this->result_id;
来自DB_driver.php:366