gpt4 book ai didi

php - 在PHP中删除JSON数组元素,然后重新编码为JSON

转载 作者:行者123 更新时间:2023-12-04 20:52:53 25 4
gpt4 key购买 nike

function deleteNews($selected) {
$file = file_get_contents('news.json', true);

$data=json_decode($file,true);
unset($file);

foreach($selected as $index){
unset($data[$index]);
}


$result=json_encode($data);

file_put_contents('news.json', $result);
echo $result;
unset($result);
$url="./deleteNews.php";
//redirect($url);
}


上面的功能应该从JSON中删除一个条目,例如:

[
{
"dummy":"dummy",
"dummy1":"dumy"
},
{
"dummy":"dummy1",
"dummy1":"dummy"
}
]


但是最后该函数在JSON中插入数字索引,这是不希望的。

结果就像

[
"0":
{
"dummy":"dummy",
"dummy1":"dumy"
},
"1":
{
"dummy":"dummy1",
"dummy1":"dummy"
}
]


如何从中获取原始的JSON格式?我不想要0 1 2索引部分。

N.B:是 foreach做到这一点。没有 foreach,将按预期方式创建JSON。

最佳答案

尝试使用array_values:

$result = json_encode(array_values($data));

关于php - 在PHP中删除JSON数组元素,然后重新编码为JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27087974/

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