• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

php数组指定一列求和用什么函数

武飞扬头像
PHP中文网
帮助21

php数组中指定一列求和用array_column()和array_sum()函数。

  • array_column()函数可以获取数组中指定一列的全部元素

  • array_sum()函数可计算数组中所有元素的和

实现步骤:

步骤1:使用array_column()函数指定数组中指定一列的值

array_column() 可以返回指定数组中某个单一列的值;会返回一个数组,数组值为就是指定一列的值。

<?php
header('content-type:text/html;charset=utf-8');   
$user = array(
 '0' => array('id' => 100, 'username' => 'a1'),
 '1' => array('id' => 101, 'username' => 'a2'),
 '2' => array('id' => 102, 'username' => 'a3'),
 '3' => array('id' => 103, 'username' => 'a4'),
 '4' => array('id' => 104, 'username' => 'a5'),
);
var_dump($user);
$id=array_column($user, 'id');
var_dump($id);
?>

学新通技术网

步骤2:使用array_sum()对结果数组求和

array_sum() 函数可以计算指定数组中所有元素的和

$sum=array_sum($id);
echo "多维数组中id列的和:".array_sum($id);

学新通技术网

扩展知识:array_product()函数

array_sum()函数可以计算数组元素总和,而array_product()函数可以计算数组元素乘积。

<?php
$array= array(2,3,4);
echo '2 * 3 * 4 = '. array_product($array);

$array= array(3,4,5);
echo '<br>3 * 4 * 5 = '. array_product($array);

$array= array(1,2,3,4,5,6,7,8,9,10);
echo '<br>1 * 2 * 3 *...* 9 * 10 = '. array_product($array);
?>

输出结果:

学新通技术网

如果$array中存在非数值类型的元素,那么PHP会将它们转换成一个数值(隐性数据类型转换),转换失败就作为 0 值。

<?php
$array= array(2,"3.1",4);
echo '2 * 3.1 * 4 = '. array_product($array);

$array= array(3,"10.abc",5);
echo '<br>3 * "10.abc" * 5 = 3 * 10 * 5 ='. array_product($array);

$array= array(3,"hello",5);
echo '<br>3 * "hello" * 5 = 3 * 0 * 5 ='. array_product($array);
?>
  • 字符串"3.1"会被转换成小数 3.1 ,所以第一个数组的元素乘积为24.8。

  • 字符串 "10abc" 会被转换成整数 10,所以第二个数组的元素乘积为150。

  • 字符串“hello”无法被转换成整数,因此作为 0 值,继而第三个数组的元素乘积为0。

输出结果:

学新通技术网

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanfejbj
系列文章
更多 icon
同类精品
更多 icon
继续加载