У меня есть массив, который может выглядеть примерно так:Кодирование JSON в качестве объекта, даже если она имеет нулевой индекс
array(
1 => "foo",
4 => "bar"
)
Когда я json_encode
его, получается что-то вроде этого:
{
"1": "foo",
"4": "bar"
}
Именно так мне это нужно.
Однако, существует вероятность того, что массив будет выглядеть следующим образом:
array(
0 => "baz"
)
В этом случае я хотел бы в JSON, в конечном итоге, как это:
{
"0": "baz"
}
Но вместо этого, он заканчивается следующим образом:
[
"baz"
]
Есть ли способ заставить кодировщик JSON предположить, что это объект вместо массива?
EDIT: К сожалению, я упростил на этот пост, но сейчас я понимаю, что это очень важно: Этот массив является вложенным в другой массив, который должен быть массивом, не объекта.
РЕДАКТИРОВАТЬ 2: Пример этого:
array(
0 => array(
0: "baz"
),
1 => array(
4: "bar"
)
)
должно стать:
[
{
0: "baz"
},
{
4: "bar"
}
]
Это кажется для меня недействительным. – JJJollyjim
Если вы используете 5.3.0+, используйте это (что, надеюсь, вы есть), если нет, тогда мой ответ должен сделать трюк. –
Извините, я ошибся, он действительно работает, я думаю ... все еще проверяю. – JJJollyjim