gpt4 book ai didi

php - Json_encode 或删除最后一个逗号?

转载 作者:行者123 更新时间:2023-12-04 04:35:36 28 4
gpt4 key购买 nike

我想出了如何获得我想要的结果(几乎)。我的代码在最后一个 ] 之前添加了一个逗号,所以它不会完全起作用。我知道我可以使用 Json_encode 从我的外部 json 构建我的数组,但我很难过。我要么需要删除最后一个逗号,要么使用 json_encode (我迷路了)有什么更好的主意吗?

代码:

原始 JSON

[
{
"timestamp": 1383609600,
"localTimestamp": 1383609600,
"issueTimestamp": 1383609600,
"fadedRating": 4,
"solidRating": 0,
"swell": {
"minBreakingHeight": 4,
"absMinBreakingHeight": 3.836,
"maxBreakingHeight": 6,
"absMaxBreakingHeight": 5.992,
"unit": "ft",
"components": {
"combined": {
"height": 7,
"period": 13,
"direction": 82.64,
"compassDirection": "W"
},
"primary": {
"height": 7,
"period": 13,
"direction": 72.94,
"compassDirection": "WSW"
}
}
}

]

PHP 得到想要的结果
<?php
$url = 'http://magicseaweed.com/api/API_KEY/forecast/?spot_id=1';
$JSON = file_get_contents($url);



$data = json_decode($JSON,true);
echo "[";


foreach ($data as $record) {

echo "[";
echo "{$record['timestamp']}";
echo ",";
echo "{$record['swell']['absMinBreakingHeight']}";
echo "]";
echo ",";



}
echo "]";
?>

返回:所需结果减去最后一个逗号(编辑长度)
[
[
1383609600,
3.836
],
[
1383620400,
4.081
],
]

最好的方法是什么?

最佳答案

冒着在没有明确问题的情况下回答的风险,只需构建一个您想要的数组并对其进行编码:

foreach ($data as $record) {
$array[] = array($record['timestamp'], $record['swell']['absMinBreakingHeight']);
}
echo json_encode($array);

关于php - Json_encode 或删除最后一个逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19795777/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com