dsa88885555 2017-10-10 07:00
浏览 65
已采纳

php计算每10个数组元素的总数

Array ( 
    [0] => Array ( 
        [amount_paid] => 2050.00 
    )
    [1] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [2] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [3] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [4] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [5] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [6] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [7] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [8] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [9] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [10] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [11] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [12] => Array ( 
        [amount_paid] => 2050.00 
    ) 
    [13] => Array ( 
        [amount_paid] => 2050.00 
    ) 

) 

I have this example of array in php. I want to sum up every 10 paid amount.

Example is sum index 0-9 , 10 - 19 and so on

What I tried is only for first 10 and I cant think how to handle for every 10 with dynamic number

for ($i = 0; $i < count($json); $i++) {
    if ($i < 10) {
        $subtotalamount += floatval($json[$i]['amount_paid']);
    }
}
  • 写回答

5条回答 默认 最新

  • douyu9159 2017-10-10 07:12
    关注

    Short solution with range, array_slice and array_column functions:

    // $arr is your initial array
    $sub_totals = [];
    foreach(range(0, count($arr), 10) as $k){
        $sub_totals[] = array_sum(array_column(array_slice($arr, $k, 10), 'amount_paid'));
    }
    

    • range(0, count($arr), 10) - generate an array containing a range of elements. It would be as [0, 10, 20]. Those elements are boundaries for each 10-sized sequence

    • array_slice($arr, $k, 10) - each next boundary $k is used for extracting next 10-sized sequence/slice from the initial array $arr

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助