Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在PHP/codeigniter中从JSON数组中删除子元素_Javascript_Php_Jquery_Json_Codeigniter - Fatal编程技术网

Javascript 在PHP/codeigniter中从JSON数组中删除子元素

Javascript 在PHP/codeigniter中从JSON数组中删除子元素,javascript,php,jquery,json,codeigniter,Javascript,Php,Jquery,Json,Codeigniter,我在json数组下面,我想删除子节点“n”:[]-当它为空时。(菲律宾) 输入: [ { "level": 1, "id": "101", "n": [ { "level": 2, "id": "102", "n": [ ] } ] }, { "level": 1, "id": "103", "n": [ { "

我在json数组下面,我想删除子节点“n”:[]-当它为空时。(菲律宾)

输入:

[
  {
    "level": 1,
    "id": "101",
    "n": [
      {
        "level": 2,
        "id": "102",
        "n": [

        ]
      }
    ]
  },
  {
    "level": 1,
    "id": "103",
    "n": [
      {
        "level": 2,
        "id": "104",
        "n": [

        ]
      },
      {
        "level": 2,
        "id": "105",
        "n": [
          {
            "level": 3,
            "id": "106",
            "n": [

            ]
          },
          {
            "level": 3,
            "id": "107",
            "n": [
              {
                "level": 4,
                "id": "108",
                "n": [
                  {
                    "level": 5,
                    "id": "109",
                    "n": [

                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  },
  {
    "level": 1,
    "id": "110",
    "n": [
      {
        "level": 2,
        "id": "111",
        "n": [
          {
            "level": 3,
            "id": "112",
            "n": [

            ]
          }
        ]
      },
      {
        "level": 2,
        "id": "113",
        "n": [
          {
            "level": 3,
            "id": "114",
            "n": [
              {
                "level": 4,
                "id": "115",
                "n": [

                ]
              }
            ]
          },
          {
            "level": 3,
            "id": "116",
            "n": [
              {
                "level": 4,
                "id": "117",
                "n": [

                ]
              },
              {
                "level": 4,
                "id": "118",
                "n": [
                  {
                    "level": 5,
                    "id": "119",
                    "n": [

                    ]
                  },
                  {
                    "level": 5,
                    "id": "120",
                    "n": [

                    ]
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }
]
输出:

[
  {
    "level": 1,
    "id": "101",
    "n": [
      {
        "level": 2,
        "id": "102"
      }
    ]
  },
  {
    "level": 1,
    "id": "103",
    "n": [
      {
        "level": 2,
        "id": "104"
      },
      {
        "level": 2,
        "id": "105",
        "n": [
          {
            "level": 3,
            "id": "106"
          },
          {
            "level": 3,
            "id": "107",
            "n": [
              {
                "level": 4,
                "id": "108",
                "n": [
                  {
                    "level": 5,
                    "id": "109"
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  },
  {
    "level": 1,
    "id": "110",
    "n": [
      {
        "level": 2,
        "id": "111",
        "n": [
          {
            "level": 3,
            "id": "112"
          }
        ]
      },
      {
        "level": 2,
        "id": "113",
        "n": [
          {
            "level": 3,
            "id": "114",
            "n": [
              {
                "level": 4,
                "id": "115"
              }
            ]
          },
          {
            "level": 3,
            "id": "116",
            "n": [
              {
                "level": 4,
                "id": "117"
              },
              {
                "level": 4,
                "id": "118",
                "n": [
                  {
                    "level": 5,
                    "id": "119"
                  },
                  {
                    "level": 5,
                    "id": "120"
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }
]
从json数组中删除所有“n”:[]。
请使用一些PHP代码帮助我从上述输入中获取输出。

使用递归,递归地查找具有值
[]
的属性
n
,并删除它们:

函数removemptynode(节点){
如果(!nodes | | nodes.length==0)
回来
forEach(函数(节点){
if(node.n.length==0){
删除节点n;
}否则{
removemptynode(node.n);
}
});
}
风险值数据=[{
"一级",,
“id”:“101”,
“n”:[{
“级别”:2,
“id”:“102”,
“n”:[]
}]
}, {
"一级",,
“id”:“103”,
“n”:[{
“级别”:2,
“id”:“104”,
“n”:[]
}, {
“级别”:2,
“id”:“105”,
“n”:[{
"三级",,
“id”:“106”,
“n”:[]
}, {
"三级",,
“id”:“107”,
“n”:[{
“级别”:4,
“id”:“108”,
“n”:[{
“级别”:5,
“id”:“109”,
“n”:[]
}]
}]
}]
}]
}, {
"一级",,
“id”:“110”,
“n”:[{
“级别”:2,
“id”:“111”,
“n”:[{
"三级",,
“id”:“112”,
“n”:[]
}]
}, {
“级别”:2,
“id”:“113”,
“n”:[{
"三级",,
“id”:“114”,
“n”:[{
“级别”:4,
“id”:“115”,
“n”:[]
}]
}, {
"三级",,
“id”:“116”,
“n”:[{
“级别”:4,
“id”:“117”,
“n”:[]
}, {
“级别”:4,
“id”:“118”,
“n”:[{
“级别”:5,
“id”:“119”,
“n”:[]
}, {
“级别”:5,
“id”:“120”,
“n”:[]
}]
}]
}]
}]
}];
removemptynode(数据);

控制台日志(数据)请小心设置格式。坦白说,这真是一团糟。另外,如果您想使用PHP实现您想要的功能,请不要标记其他无关的语言,例如jQuery和jswelly edited@rorymcrossan。--这不是一个递归遍历对象并删除空
n
数组的问题吗?到目前为止,您尝试了什么?您想在PHP或javascript中实现这一点吗?在你的代码中有javascript对象。@abhishekkannojia:我想要PHP中的这个。但是我从js.plz获得了输入,用PHP制作。