我需要在php中创建一个多维数组,并希望在jQuery脚本中将其用作JSON对象数组;
jQuery脚本中所需的输出应如下所示:
data = [
{ Month:'April', Comms:1000, Fees:200, Gains: 200},
{ Month:'May', Comms:1200, Fees:300, Gains: 300}
]
目前我的php数组生成如下:
$data1[] = array(
'Month' => 'April',
'Comms' => 1000,
'Fees' => 200,
'Gains' => 200
);
$data2[] = array(
'Month' => 'May',
'Comms' => 1200,
'Fees' => 300,
'Gains' => 300
);
echo json_encode($data);
我的问题是如何将data1和data2组合到json_encode php函数中的数据数组中,这将产生所需的jQuery JSON对象数组?
我确实拥有不同数组字段的值,并且可以以不同的方式创建data1和data2,因此数据是灵活的,我可以以任何其他方式将它们组合在一起,这将产生将在其中输出它们的数据数组。需要JSON格式。
任何帮助都将受到高度赞赏,我已经看到有关此主题的问题,但没有一个能解决我所面临的问题。
答案 0 :(得分:2)
简单地:
echo json_encode($data1 + $data2);
请注意,您还可以使用+
合并数组。
答案 1 :(得分:1)
尝试:
echo json_encode(array_merge($data1, $data2));
答案 2 :(得分:1)
写:
echo json_encode($data1 + $data2);
答案 3 :(得分:1)
您需要将两个阵列合并到一个新的阵列数组中。有关详细信息,请参阅manual。
$data = array_merge($data1, $data2);
echo json_encode($data)
或更简单地使用+
运算符:
echo json_encode($data1 + $data2)
答案 4 :(得分:0)
只是用户
echo json_encode($data1 + $data2);
答案 5 :(得分:0)
您应该通过使用groupBy months从数据库中提取数据来创建另一个数组,并将数据存储在其他数组中。
$array = array();
foreach ($data as $element) {
$array[$element['month']][] = [ 'comms' => $element['comms'], 'fees' => $element['fees'], 'gains' => $element['gains']
}