json_encode () na tablicy wielowymiarowej - z kluczami łańcuchowymi
Tworzę bardzo dużą tablicę wielowymiarową przy użyciu PHP. Każdy obiekt zawiera nazwę, identyfikator, identyfikator nadrzędny i dzieci. Dzieci to szereg innych obiektów w tym samym formacie.
Najważniejsze jest, aby nazwać identyfikatory każdego obiektu - to pomaga mi umieścić każdy obiekt pod właściwym rodzicem. (W poniższym kodzie używam 101, 102 itd.)
Jednak problem mam, gdy zwracam tablicę w JSON za pomocąjson_encode
. Każda tablica „Dzieci” jest drukowana jako obiekt, a nie tablica - jak pokazano w kodzie JSON poniżej.
Jak czytam na innym wątku SOtutaj, „są wykonane jako obiekty z powodu włączenia kluczy łańcuchowych” - mimo że są to liczby, nadal są łańcuchami.
{
"101": {
"ID": "101",
"ParentID": "0",
"Name": "Root One"
"Children": {
"102": {
"ID": "102",
"ParentID": "101",
"Name": "Child One"
},
"103": {
"ID": "103",
"ParentID": "101",
"Name": "Child Two",
"Children": {
"104": {
"ID": "104",
"ParentID": "103",
"Name": "Child Child One"
}
}
},
Czy ktoś wie, jak rozwiązać ten problem?
Edytować: JSON powinien wyglądać następująco (nawiasy kwadratowe są ważne!):
[
{
"ID": "101",
"ParentID": "0",
"Name": "Root One",
"Children": [
{
"ID": "102",
"ParentID": "101",
"Name": "Child One",
"Children": [