Im使用Slim Framework以JSON格式返回结果。返回已格式化的JSON - Slim Framework
$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
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;
啊我忘了提到它的多维的JSON。它适用于如果我把 返回$ response-> write($ result [0]) - > withHeader('Content-Type','application/json'); 它返回已经格式化的json,但不是整个集合。 :/ –
可能我需要循环json作为param发送到写入方法..因为我需要解码然后再编码...:/我是对吗? –
是的。您需要这样做;( – geggleto