[英]MySQLi result to array
目前,我的代码输出1个数组,但不能全部显示。 我知道我需要一会儿或foreach循环才能显示其余内容。
这是我当前的代码:
/**
* Get work orders via email and password and institution id
*/
public function getWorkOrdersByInstitution($email, $password, $institution_id) {
$work_order_stmt = $this->conn->prepare("SELECT * FROM project WHERE institution_id = ?");
$work_order_stmt->bind_param("s", $institution_id);
if ($work_order_stmt->execute()) {
$workorder = $work_order_stmt->get_result()->fetch_assoc();
$work_order_stmt->close();
return $workorder;
} else {
return NULL;
}
}
我希望它返回数组。 当前,这是返回的内容(注意:显示数组时我正在使用json_encode):
{
"project_id": 1,
"date": "Undefined",
"project_code": "ea60f6190c",
"title": "test",
"description": "test",
"demo_url": null,
"project_category_id": null,
"client_id": null,
"company_id": null,
"staffs": "4,5,",
"budget": 0,
"timer_status": 0,
"timer_starting_timestamp": null,
"total_time_spent": 0,
"progress_status": null,
"timestamp_start": "1516874400",
"timestamp_end": "1516878000",
"project_status": 1,
"project_note": null,
"institution_id": 12,
"project_state": 2,
"strata_manager": 6,
"site_contact": 7,
"place_of_service": 18
}
所以最终,我希望所有行都存储在1个数组中,我可以在另一个页面上返回并使用它。
是的,您可以使用循环获取所有结果:
if ($work_order_stmt->execute()) {
$result = $work_order_stmt->get_result() ;
$workorders = [] ;
while ($workorder = $result->fetch_assoc()) {
$workorders[] = $workorder ;
}
$work_order_stmt->close();
return $workorders;
}
else { .. }
或者,您可以使用fetch_all()
获取所有数据:
$workorders = $result->fetch_all();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.