我使用 Slim Framework 以 JSON 格式返回结果。
$app->get('/forecast_range/{latitude}/{longitude}/{timeStart}/{timeEnd}', function (Request $request, Response $response) {
$latitude = $request->getAttribute('latitude');
$longitude = $request->getAttribute('longitude');
$timeStart = $request->getAttribute('timeStart');
$timeEnd = $request->getAttribute('timeEnd');
$timeStart = new DateTime($timeStart);
$timeEnd = new DateTime($timeEnd);
$coordinates[] = array('latitude' => $latitude, 'longitude' => $longitude);
$forecast = new forecast_range_url($coordinates, 1, $timeStart, $timeEnd);
$result = $forecast->runForecast(true);
return $response->withJson($result);
});
该$result
变量已经是一个 JSON,一个多维的。我怎样才能将 $result 变量返回给客户端而无需再次对其进行编码?
我尝试使用此代码将$result
keysJSON 附加到响应中。我觉得我很接近但还没有。我收到语法错误。
$lenght = count($result);
for ($i=0; $i<$lenght; $i++){
$response->write($result[$i]);
}
$newResponse = $response->withHeader(
'Content-type',
'application/json; charset=utf-8'
);
return $newResponse;