PHP二维数组求和

$arr = array(

0=>array('id'=>1,'tol'=>10),

1=>array('id'=>3,'tol'=>12),

2=>array('id'=>8,'tol'=>5)

);


-(1)使用array_sum和array_map函数求和

-- PHP7.2以下可用

        echo array_sum(array_map(create_function('$val', 'return $val["tol"];'), $arr));


-- PHP7.2及以上可用(因为php7.2废弃create_function)

        echo array_sum(array_map(function($val){return $val['tol'];}, $arr));

- (2)通用foreach循环

    $sum = 0;

    foreach($arr as $item){

        $sum += (int) $item['tol'];

    }

二维数组排序

//根据字段last_name对数组$data进行降序排列

$last_names=array_column($data,'last_name');

array_multisort($last_names,SORT_DESC,$data);

你可能感兴趣的:(PHP二维数组求和)