我在PHP中有一个执行查询并返回resutls的函数:
public function findUsersByParentId ( $parentId ) {
$query = " SELECT * FROM users u WHERE u.parent_id = " .$parentId ;
$con = DBHelper::getDatabaseConnection();
$queryResult = mysqli_query($con,$query);
$results = mysqli_fetch_array($queryResult,MYSQLI_ASSOC);
mysqli_close($con);
return $results;
}
然后我想在另一个文件中循环结果:
....
$values = $UserModel->findUsersByParentId ( $parentId );
foreach ( $values as $row ) {
echo $row['id'] . " : " . $row['name'];
}
但它不起作用。如果打印好,如果在第一个函数内使用print-loop。如果我使用"返回" ed结果的打印循环它不起作用。有什么建议吗?
答案 0 :(得分:0)
$results = mysqli_fetch_array($queryResult,MYSQLI_ASSOC);
一次只能获得一行。
因此您必须执行以下操作:
while($row=mysqli_fetch_array($queryResult,MYSQLI_ASSOC)){
$results[]=$row;
}
return $results;