【问题标题】:how to sum array using php?如何使用 php 对数组求和?
【发布时间】:2016-10-18 23:58:34
【问题描述】:

如果生成这样的数据,如何添加票价?这样就可以有关税的总数 如果这样生成的数据如何添加票价?这样就可以有关税总数

Array
(
    [3] => Array
        (
           
            [TARIFF] => 0
           
        )

    [4] => Array
        (
         
            [TARIFF] => 0
           
        )

    [2] => Array
        (
            
            [TARIFF] => 29500
            
        )

    [0] => Array
        (
           
            [TARIFF] => 20500
            
        )

    [1] => Array
        (
           
            [TARIFF] => 14500
            
        )

)

【问题讨论】:

  • array_sum(array_column($array, 'TARIFF'));
  • array_reduce($array, function($runningTotal, $value) { $runningTotal += $value['TARIFF']; return $runningTotal; }, 0);
  • 或者只是让你的数据库查询为你做这件事

标签: php arrays codeigniter


【解决方案1】:

有多种方法可以对数组求和:

  • 您可以将array_sum()array_column() 结合使用
  • 您可以使用foreach
  • 您可以使用array_map()
  • 您可以使用array_reduce() - (Mark Ba​​ker)

array_sum() 和 array_column()

$total = array_sum(array_column($array, 'TARIFF'));

foreach

$total = 0;
foreach ($array as $value) {
    $total += $value['TARIFF'];
}

array_map()

$count = array_sum(array_map(function ($value) {
    return $value['TARIFF'];
}, $array));

array_reduce() - 感谢 Mark Ba​​ker

array_reduce($array, function($runningTotal, $value) {
    $runningTotal += $value['TARIFF'];
    return $runningTotal;
}, 0);

来源:

【讨论】:

    【解决方案2】:

    array_sum()array_column() 一起使用

    示例

    $a = array(
        "a"=>52.2,
        "b"=>13.7,
        "c"=>0.9
    );
    echo array_sum($a);
    

    你的情况

    array_sum(array_column($arrayName, 'TARIFF'));
    

    引用链接

    1. array_sum in W3School.com
    2. array_column() in W3School.com

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-20
      • 1970-01-01
      • 2011-07-06
      • 1970-01-01
      相关资源
      最近更新 更多