我正在使用 PHP 创建一个非常大的多维数组。每个对象包含名称、ID、ParentID 和 Children。 Children 是具有相同格式的更多对象的数组。
命名每个对象的 ID 至关重要 - 这有助于我将每个对象置于正确的父对象下。 (在下面的代码中,我使用 101、102 等)
但是,我遇到的问题是当我使用 JSON 返回数组时json_encode
。每个“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"
}
}
},
有谁知道如何克服这个问题?
Edit:JSON 应如下所示(方括号很重要!):
[
{
"ID": "101",
"ParentID": "0",
"Name": "Root One",
"Children": [
{
"ID": "102",
"ParentID": "101",
"Name": "Child One",
"Children": [