我只获得一行,有人可以告诉我如何从数据库表的表列中获取所有数据吗?
public function getCategories(){
$result = $this->db->query('SELECT * FROM newscat');
$rows = array();
while($row = $result->fetch_assoc()){
$rows[] = $row;
return $rows;
}
}
答案 0 :(得分:7)
你是从循环中返回的。这将在第一轮打破它。
return
在循环之外。
答案 1 :(得分:2)
做小改动
public function getCategories(){
$result = $this->db->query('SELECT * FROM newscat');
$rows = array();
while($row = $result->fetch_assoc()){
$rows[] = $row;
}
return $rows;
}
答案 2 :(得分:1)
您的问题是return $rows;
。它应该在 while
之后。问题是它将进入while,将第一行放入数组中,然后立即返回它。你想要的是让while
做它的事情,在完成之后,返回数组。
答案 3 :(得分:0)
如果您使用的是mysqli。 然后你可以使用它的apiFfetch_all一次获取所有行。
例如: 的 $阵列= $ result-> fetch_all(MYSQLI_ASSOC); 强>
上面的代码将获得相应数组中的所有相关行。