将 JSON 数据从 API 转换为数组并在 Laravel 和 Guzzle HTTP Client 中分别显示?
Posted
技术标签:
【中文标题】将 JSON 数据从 API 转换为数组并在 Laravel 和 Guzzle HTTP Client 中分别显示?【英文标题】:Convert JSON data from API to array and display it separately in Laravel and Guzzle HTTP Client? 【发布时间】:2018-05-17 21:10:38 【问题描述】:我正在使用 API 获取 JSON 格式的数据,我想将它们转换为数组并分别显示每个 'name'=>'value' 对在 Laravel 中,我使用 Guzzle Http Client 来获取 API 数据,
获取数据的代码:
$pnrNumber = 4238007735;
$client = new Client();
$res = $client->request('GET', 'https://api.railwayapi.com/v2/pnr-status/pnr/'.$pnrNumber.'/apikey/<API-KEY>/');
$body = $res->getBody();
echo $body;
谢谢!
【问题讨论】:
还有...你的问题到底是什么? @matiit 我正在获取 JSON 格式的数据,但我希望将数据单独存储在不同的变量中 例如:JSON 数据是(“doj”: “07-12-2017”,“乘客”:[“booking_status”:“CNF/S7/15/GN”,“否”:1,“current_status”:“CNF/-/0/GN”] ) 我希望它将所有值存储在不同的变量中。 【参考方案1】:使用json_decode
函数:
$array = json_decode($body, true);
注意第二个参数设置为true
,所以输出是数组而不是stdClass。
【讨论】:
以上是关于将 JSON 数据从 API 转换为数组并在 Laravel 和 Guzzle HTTP Client 中分别显示?的主要内容,如果未能解决你的问题,请参考以下文章
将 numpy 数组列表转换为 json 以从烧瓶 api 返回
如何将 JSON 数据转换为 XML 格式数据并在 React JS 中下载文件