我有一个类似于
的json字符串{
{
"field": value,
"other_field": value,
"object field": {
"field": stuff
}
},
{
"field": value,
"other_field": value,
"object field": {
"field": stuff
}
}
}
我需要将它转换为json字符串数组,因此输出数组的每个元素都类似于
{
"field": value,
"other_field": value,
"object field": {
"field": stuff
}
}
我知道有json_decode()
,但这会把整个事情变成一堆嵌套数组,但我只想把它做到顶级。有没有一种简单的方法可以做到这一点,或者我最好解码整个字符串并重新编码每个元素?
答案 0 :(得分:0)
json_decode( $json )[0]
获取第一个数组元素。这满足了您的需求吗?
答案 1 :(得分:0)
我认为你必须重新考虑你正在做的事情,因为它很可疑。以下是您要问的一个解决方案:
<?php
$json = '[ {"foo": 1, "bar": true}, {"foo": 2, "bar": false} ]';
array_map('json_encode', json_decode($json));
// Array
// (
// [0] => {"foo":1,"bar":true}
// [1] => {"foo":2,"bar":false}
// )
答案 2 :(得分:0)
你必须解码json字符串,然后编码每个数组元素:
$arr = json_decode($json);
$res = array();
foreach ($arr as $entry) {
$res[] = json_encode($entry);
}