我的输出是:
Array
(
[0] => Array
(
[0] => Array
(
[no] => 316198
[name] => Uma
)
[1] => Array
(
[0] => Array
(
[totavg] => 3.0403
[tot] => 20.2023
[id] => 27
[pid] => 710600
[adr] => local
[photo] => 123.png
[date] => 19930-01-06 05:40 AM
)
)
)
)
我希望显示如下:
{
"no": "316198",
"name": "Uma",
"totavg": "3.0403",
"tot": "20.2023",
"id": "27",
"pid": "710600",
"adr": "local",
"photo": "123.png",
"date": "19930-01-06 05:40 AM"
}
我该怎么做?
答案 0 :(得分:2)
使用array_walk_recursive()
展平您的数组,然后使用json_encode()
创建数组的JSON表示:
$result = array();
array_walk_recursive($array, function($v) use (&$result) { $result[] = $v; });
echo json_encode($result, JSON_PRETTY_PRINT);
如果您事先知道子数组的键名,可以使用array_merge()
,如其他答案中所示,但如果您的数组嵌套更深一层,或者如果位置更深,那么这些解决方案将会失败子阵列事先是未知的。
输出:
[
316198,
"Uma",
3.0403,
20.2023,
27,
710600,
"local",
"123.png",
"19930-01-06 05:40 AM"
]
答案 1 :(得分:1)
您可以将所有数组合并为一个
$resultArray = array();
foreach($bigArray as $array) {
array_merge($resultArray, $array);
}
var_dump($resultArray);
答案 2 :(得分:0)
array_merge()
应该有效:
<?php
$new_array = array_merge($old_array[0][0], $old_array[0][1][0]);
echo '<pre>'.print_r($new_array, true).'</pre>';
// I see you want JSON format?
echo json_encode($new_array);
?>