如何在php中转换此数组?

如何在php中转换此数组?,php,Php,我想按“biomasse”和“solar”对阵列进行排序。例如: $array1 = [ 2019 => [ Biomasse => [summe => 32113] Solar => [summe => 21321] ] 2020 => [ Biomasse => [summe => 3123113] Solar => [summe => 21421321] ] 2021 =>

我想按“biomasse”和“solar”对阵列进行排序。例如:

$array1 = [
  2019 => [
    Biomasse => [summe => 32113]
    Solar => [summe => 21321]
  ]
  2020 => [
    Biomasse => [summe => 3123113]
    Solar => [summe => 21421321]
  ]
  2021 => [
    Biomasse => [summe => 2122]
    Solar => [summe => 1233]
  ]
]
“总和”应按年份排序。

$output=[];
foreach($array1作为$array1Row){
foreach($array1Row作为$key=>$SUMMARRAY){
如果(!array_key_存在($key,$output)){
$output[$key]['summe']=[];
}
$output[$key]['summe'][=$summarray['summe'];
}
}
foreach($key=>$sumArray输出){
排序($output[$key]['summe']);
}

对这里的问题做出一些假设,并对提供的数据结构表示怀疑,但是

假设这是你想要的结果,让Biomasse和Solar按年份排序

$array2 = [
    Biomasse => [summe => 32113,3123113, 2122]
    Solar => [summe => 21321, 21421321, 1233]
]
 
然后,您应该首先执行a,然后执行a,然后只需将值添加到新数组中即可

榜样

$array1=数组(
“2019”=>阵列(
“Biomasse”=>阵列(32113),
“太阳能”=>阵列(21321)
),
“2020”=>阵列(
“Biomasse”=>阵列(3123113),
“太阳能”=>阵列(21421321)
),
“2021”=>阵列(
“Biomasse”=>阵列(2122),
“太阳能”=>阵列(1233)
)
);
k港口(1美元);
$array2=数组(
“Biomasse”=>数组(),
“太阳能”=>阵列()
);
foreach($array1作为$year){
$array2[“Biomasse”][]=年[“Biomasse”][0];
$array2[“太阳能”][]=年[“太阳能”][0];
}
回声“;
var_dump($2);
回声“;

这不仅仅是一种排序,您还要求转换阵列,而且您的输出示例一开始似乎没有多大意义。为什么这些值中的第一个得到键
summe
,然后是以下简单的数字键…?请阅读。我们不想整天为人们回答简单的“如何”问题,为他们编写代码。你至少应该展示你自己的尝试。
$array2 = [
    Biomasse => [ valueOf2019, valueOf2020 , valueOf2021 ]
    Solar => [ valueOf2019, valueOf2020 , valueOf2021 ]
]