主要的 CI 功能是这样工作的:-
结果()
此函数将查询结果作为对象数组返回,或者在失败时返回空数组。通常,您将在 foreach 循环中使用它,如下所示:
$query = $this->db->query("YOUR QUERY");
foreach ($query->result() as $row)
{
echo $row->title;
echo $row->name;
echo $row->body;
}
上述函数是 result_object() 的别名。
如果您运行的查询可能不会产生结果,建议您先测试结果:
$query = $this->db->query("YOUR QUERY");
if ($query->num_rows() > 0)
{
foreach ($query->result() as $row)
{
echo $row->title;
echo $row->name;
echo $row->body;
}
}
您还可以将字符串传递给 result() ,它表示要为每个结果对象实例化的类(注意:必须加载此类)
$query = $this->db->query("SELECT * FROM users;");
foreach ($query->result('User') as $row)
{
echo $row->name; // call attributes
echo $row->reverse_name(); // or methods defined on the 'User' class
}
结果数组()
该函数将查询结果作为纯数组返回,或者在没有结果时返回空数组。通常,您将在 foreach 循环中使用它,如下所示:
$query = $this->db->query("YOUR QUERY");
foreach ($query->result_array() as $row)
{
echo $row['title'];
echo $row['name'];
echo $row['body'];
}
排()
此函数返回单个结果行。如果您的查询不止一行,它只返回第一行。结果作为对象返回。这是一个使用示例:
$query = $this->db->query("YOUR QUERY");
if ($query->num_rows() > 0)
{
$row = $query->row();
echo $row->title;
echo $row->name;
echo $row->body;
}