首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在PHP中重新组合数组

在PHP中重新组合数组
EN

Stack Overflow用户
提问于 2021-12-10 01:42:51
回答 1查看 43关注 0票数 0

我有一个数组需要转换或重新组合才能形成一个新的数组。

原始数组如下所示

代码语言:javascript
运行
复制
Array
(
    [0] => Array
        (
            [amount] => 1439.53
            [c_year] => 2021
            [c_month] => 9
            [short_month] => Sep
        )

    [1] => Array
        (
            [amount] => 1448.13
            [c_year] => 2021
            [c_month] => 10
            [short_month] => Oct
        )

)

注:月份=c_月.‘-’.C_年份

我需要它看起来像下面的数组

代码语言:javascript
运行
复制
Array
(
    [0] => Array
        (
          [month] => Sept-9
          [amount] => 1439.53
         )
    [1] => Array
        (
          [month] => Oct-9
          [amount] => 1448.13
        )
)

我尝试了几个循环,但似乎无法转换或重新组合它。

我的努力列在下面。

代码语言:javascript
运行
复制

foreach ($resultsArray as $key=>$value) {

代码语言:javascript
运行
复制
$monthsFees = array('month'=>$value['c_year'].'-'.$value['c_month']);array('amount'=>$value['amount']);
代码语言:javascript
运行
复制
}
代码语言:javascript
运行
复制

结果:

代码语言:javascript
运行
复制
Array
(
    [month] => 2021-10
)

foreach ($resultsArray as $key=>$value) {

代码语言:javascript
运行
复制
array_push($monthsFees,'amount',$value['amount'],'month' ,$value['short_month'].'-'.$value['c_year']);
代码语言:javascript
运行
复制
}
代码语言:javascript
运行
复制

结果:

代码语言:javascript
运行
复制
Array
(
    [0] => amount
    [1] => 1439.53
    [2] => month
    [3] => Sep-2021
    [4] => amount
    [5] => 1448.13
    [6] => month
    [7] => Oct-2021
)

$feesLast6MonthsArray'month'= $value‘c_放’.‘’-‘$value’c_month‘;

代码语言:javascript
运行
复制
  $feesLast6MonthsArray['amount']=$value['amount'];

}

代码语言:javascript
运行
复制

结果:

代码语言:javascript
运行
复制
Array
(
    [month] => 2021-10
    [amount] => 1448.13
)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-10 01:59:43

可以使用地图()将数组转换为所需的

代码语言:javascript
运行
复制
$monthsFees = array_map(function($fee) {
    return [
        "month"  => sprintf("%s-%s",
             $fee["c_month"], 
             $fee["c_year"]
        ), // [c_month].'-'.[c_year]
        "amount" => $fee["amount"]
    ];
}, $resultsArray);

演示~ https://3v4l.org/0trIY

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70298792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档