【发布时间】:2014-07-09 03:17:09
【问题描述】:
我已经在 Google 上搜索了一段时间,但还没有找到我想要的。
从服务器上的 REST API,我收到了这个响应:
{"hours":6,"day":"FRI"}{"hours":3,"day":"WEDS"}{"hours":6,"day":"MON"}{"hours":9,"day":"THUR"}{"hours":12,"day":"TUES"}{"hours":3,"day":"FRI"}
这只是一长串 JSON 对象。如何让这些对象在 PHP 中作为 JSON 对象数组返回?
[
{"hours":6,"day":"FRI"},
{"hours":3,"day":"WEDS"},
{"hours":6,"day":"MON"},
{"hours":9,"day":"THUR"},
{"hours":12,"day":"TUES"},
{"hours":3,"day":"FRI"}
]
我使用的是 Slim 框架,主要是处理路由调用。
我的PHP如下:
function getHoursbyId($id) {
$app = \Slim\Slim::getInstance();
$query = 'SELECT hours, day FROM prof_hours
JOIN professors ON professors.id=prof_hours.prof_id
WHERE professors.id=?;';
$stmt = $this->connection->prepare($query);
$stmt->bind_param("i", $id);
if($stmt->execute()) {
$stmt->bind_result($hours, $day);
while ($stmt->fetch()) {
$result['hours'] = $hours;
$result['day'] = $day;
echo jsonResponse('200', $result);
}
$stmt->close();
return $result;
} else {
return NULL;
}
}
$result是一个数组,传入函数jsonResponse()
function jsonResponse($httpStatus, $response) {
$app = \Slim\Slim::getInstance();
$app->status($httpStatus);
$app->contentType('application/json');
echo json_encode($response);
}
我假设 jsonResponse 中的某个地方是我的问题,但我将如何解决这个问题?
【问题讨论】: