Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.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
Php 如何在json索引中对JsonArray结果内容进行分组_Php_Json_Object - Fatal编程技术网

Php 如何在json索引中对JsonArray结果内容进行分组

Php 如何在json索引中对JsonArray结果内容进行分组,php,json,object,Php,Json,Object,在我的JsonArray结果中,我想将所有内容放在索引[{'data':{contenthere}}] 这是我的密码: $data = []; $gr = []; //some data here foreach($gr as $g) { $data[] = [ 'id' => $g['id'], 'name' => $g['name'], 'phone' => $g['pĥone'] ] }

在我的JsonArray结果中,我想将所有内容放在索引
[{'data':{contenthere}}]

这是我的密码:

$data = [];
$gr = []; //some data here

foreach($gr as $g) {
    $data[] = [
        'id'   =>  $g['id'],
        'name'   =>  $g['name'],
        'phone'   =>  $g['pĥone']
   ]
}

return $data;
返回
$data
输出:

string(249) "[
    {
        "id": "112",
        "name": "john",
        "phone": "XXXXXXXXX"
    },
    {
        "id": "213",
        "name": "mike",
        "phone": "XXXXXXXXX"
    },
    {
        "id": "246",
        "name": "jess",
        "phone": "XXXXXXXXX"
    },
]
酷,现在我想把所有这些都放到
['data']
中,所以需要的结果是:

string(249) "[
    {
        "data": {
          {
            "id": "112",
            "name": "john",
            "phone": "XXXXXXXXX"
          },
          {
            "id": "213",
            "name": "mike",
            "phone": "XXXXXXXXX"
          },
          {
            "id": "246",
            "name": "jess",
            "phone": "XXXXXXXXX"
          },
        }
    }
]
作为

我尝试了
$data[]['data']
,但是
“data”:
在每个对象中重复

foreach($gr as $g) {
        $data[]['data'] = ...
我认为do do
group_by
函数,但我认为有一个简单的解决方案可用于实现这一点:

$json = json_encode(array('data' => $data));
print_r($json);
结果:

{
  "data": [
    {
      "id": "112",
      "name": "john",
      "phone": "XXXXXXXXX"
    },
    {
      "id": "213",
      "name": "mike",
      "phone": "XXXXXXXXX"
    },
    {
      "id": "246",
      "name": "jess",
      "phone": "XXXXXXXXX"
    }
  ]
}

我不确定您是否真的需要顶层的额外阵列,但请使用

return [["data" => $data]];

应该会给你结果。

所以试试
$data['data'][]
@riggsfully我也试过了,但是
'data':
即使对于每个对象也不会显示