我正在使用PHP創建一個非常大的多維數組。每個對象都包含名稱,ID,ParentID和Children。兒童是以相同格式的更多對象的數組。多維數組上的json_encode() - 使用字符串鍵
這很重要我將每個對象的ID都命名 - 這有助於我將每個對象放在正確的父對象下。 (在下面的代碼中,我使用101,102等)
但是,我遇到的問題是當我使用json_encode
在JSON中返回數組。每個'Children'數組都被打印爲對象,而不是數組 - 如下面的JSON代碼所示。
當我在另一個SO線程here上閱讀時,它們「由於包含字符串鍵而被製成對象」 - 雖然它們是數字,但它們仍然是字符串。
{
"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"
}
}
},
有誰知道如何解決這個問題?
編輯:的JSON應該是這樣的(方括號中是很重要的!):
[
{
"ID": "101",
"ParentID": "0",
"Name": "Root One",
"Children": [
{
"ID": "102",
"ParentID": "101",
"Name": "Child One",
"Children": [
這實際上是因爲指數不是連續的,即存在差距。 – 2013-05-07 13:04:34
此外,你的「孩子」ARE對象(從我的角度來看)而不是數組。很高興,讓OOP在你內部流動。 – 2013-05-07 13:20:56