Codeigniter/PHP为什么result()必须通过循环?
也许我对数组过程/语法的这一部分有一些误解 我想知道的是,为什么一旦我从数据库得到结果,我就必须通过foreach或其他类型的循环 假设我知道我只会从查询中得到一个结果:Codeigniter/PHP为什么result()必须通过循环?,php,arrays,loops,Php,Arrays,Loops,也许我对数组过程/语法的这一部分有一些误解 我想知道的是,为什么一旦我从数据库得到结果,我就必须通过foreach或其他类型的循环 假设我知道我只会从查询中得到一个结果: $query = $this->db->query("MY QUERY LIMIT 1"); 到目前为止,我必须通过一个循环: foreach ($query->result() as $row){ echo $row->title; echo $row->name; echo
$query = $this->db->query("MY QUERY LIMIT 1");
到目前为止,我必须通过一个循环:
foreach ($query->result() as $row){
echo $row->title;
echo $row->name;
echo $row->body;
}
有没有一种方法可以不使用循环打印项目(for、foreach或其他)?
比如:
还是别的什么
我尝试的上述方法当然不起作用
也许这只是一个坏习惯。不可能吗?可行吗?或者…?如果只想得到一个结果,请使用
row()
代替(或
row\u array()
如果希望将其作为数组而不是对象)
row()
只返回数据集中的第一行(不管有多少行,但通常在只有一行时使用)
作为一个数组:
$row = $this->db->query("MY QUERY LIMIT 1")->row_array();
echo $row['title'];
echo $row['name'];
echo $row['body'];
旁注,您还可以通过传递特定行的编号来返回该行:
$row = $query->row(5); //works also for its analogue ->row_array(5)
作为参考,如果您只想得到一个结果,请使用
row()
代替(或
row\u array()
如果希望将其作为数组而不是对象)
row()
只返回数据集中的第一行(不管有多少行,但通常在只有一行时使用)
作为一个数组:
$row = $this->db->query("MY QUERY LIMIT 1")->row_array();
echo $row['title'];
echo $row['name'];
echo $row['body'];
旁注,您还可以通过传递特定行的编号来返回该行:
$row = $query->row(5); //works also for its analogue ->row_array(5)
作为参考,是的,您可以这样尝试
$data = $query->result();
echo $data->title;
是的,你就这样试试
$data = $query->result();
echo $data->title;
试试这个
获取对象的结果
$row = $this->db->query("MY QUERY LIMIT 1")->row();
echo $row->title;
希望它能有所帮助试试这个
获取对象的结果
$row = $this->db->query("MY QUERY LIMIT 1")->row();
echo $row->title;
希望能有所帮助谢谢!这就是为什么!太好了,谢谢!这就是为什么!太好了。你没有看到达米恩更详细和类似的答案吗?你没有看到达米恩更详细和类似的答案吗?