【发布时间】:2017-09-22 09:35:12
【问题描述】:
这是一个数据样本
Date | Source | Amount
-----------------------
01A | S1 | 12
01A | S4 | 2
01A | S7 | 134
02A | S1 | 126
03A | S4 | 10
02A | S7 | 0
02A | S1 | 3
02A | S4 | 4
02A | S7 | 5
生成的数组需要如下所示:
Array
(
[01A] => Array
(
[S1] => 12
[S4] => 2
[S7] => 134
)
[02A] => Array
(
[S1] => 126
[S4] => 10
[S7] => 0
)
[03A] => Array
(
[S1] => 3
[S4] => 4
[S7] => 5
)
)
我尝试查看诸如 PHP Adding multiple associative arrays to new array based on key、PHP multiple arrays to one associative array 和 Merge multiple associative arrays to a single array of associative arrays 之类的页面,并使用如下代码(不使用相同的数据 - 但相同的理论),但它没有产生我需要的东西。下面的代码只显示了A和B
$array = Array();
$a=array( "ABC" => array("A"=>"RED","B"=>"GREEN"));
$b=array( "ABC" => array("C"=>"BLUE","D"=>"YELLOW"));
$array = $a + $b;
echo '<pre>';
print_r($array);
echo '</pre>';
【问题讨论】:
-
原始数据是否在数据库中?如果有,是哪一个?
-
是的 - 它是 MySQL 的精简版
-
有很多 PHP array functions 可以使用。或者使用简单的
foreach循环来构建预期的数组。你有没有尝试过? -
这就是我要求的原因-我不知道该怎么做-我已经尝试过
-
那你应该看看如何Pivot a Table Here would be a good start 然后你可以让MYSQL为你做所有的工作