当前位置: 首页 > news >正文

【PHP】函数array_reduce()使用场景

目录

1.计算数组中所有元素的和

2.计算数组中所有元素的乘积

3.将多个字符串连接在一起

4.对数组中的元素进行逻辑计算

5.取出第一个满足条件的数组,筛选有用数组

6.array_reduce()函数的基本语法:


array_reduce 函数通常用于对数组中的元素进行累积操作,以得到一个单一的值。在 PHP 中,array_reduce 函数的使用场景包括:

  1. 计算数组中所有元素的和、乘积、最大值、最小值等。
  2. 将多个字符串连接在一起。
  3. 对数组中的元素进行逻辑计算,例如判断所有元素是否满足某个条件。
  4. 筛选有用数组

以下是 array_reduce 函数的代码示例:

1.计算数组中所有元素的和


$array = [1, 2, 3, 4, 5];$sum = array_reduce($array, function ($carry, $item) {return $carry + $item;
}, 0);echo $sum; // 输出 15

2.计算数组中所有元素的乘积


$array = [1, 2, 3, 4, 5];$product = array_reduce($array, function ($carry, $item) {return $carry * $item;
}, 1);echo $product; // 输出 120

3.将多个字符串连接在一起


$strings = ['Hello', ' ', 'World', '!'];$result = array_reduce($strings, function ($carry, $item) {return $carry . $item;
}, '');echo $result; // 输出 "Hello World!"

4.对数组中的元素进行逻辑计算


$array = [1, 2, 3, 4, 5];$allEven = array_reduce($array, function ($carry, $item) {return $carry && $item % 2 == 0;
}, true);var_dump($allEven); // 输出 bool(false),因为数组中有奇数

5.取出一个满足条件的数组,筛选有用数组


// 最后一个满足条件的
$array = [['name'=>'ss', 'income'=>1,'deposit'=>1000],['name'=>'aa', 'income'=>2,'deposit'=>800],['name'=>'bb', 'income'=>3,'deposit'=>500],['name'=>'cc', 'income'=>4,'deposit'=>300],['name'=>'dd', 'income'=>5,'deposit'=>200],
];
$income = 3;$allEven = array_reduce($array, function ($carry, $item) use ($income) {if ($income >= $item['income']) {$carry['name'] = $item['name'];$carry['deposit'] = $item['deposit'];}return $carry;
}, []);var_dump($allEven); // 输出
array(2) {'name' =>string(2) "bb"'deposit' =>int(500)
}// 第一个满足条件的
$found = false;
$allEven = array_reduce($array, function ($carry, $item) use ($income, &$found) {if (!$found && $income >= $item['income']) {$carry['name'] = $item['name'];$carry['deposit'] = $item['deposit'];$found = true; // 设置标志变量表示已找到满足条件的元素return $res; // 返回结果并终止处理}return $carry;
}, []);

6.array_reduce()函数的基本语法:


array_reduce($array, $callback, $initial = null)

在这个语法中:

  • $array 是输入数组。
  • $callback 是回调函数。
  • $initial 是可选的初始值。

array_reduce 函数将回调函数应用于数组中的每个元素,并将结果累积到一个单一的值中。最终,array_reduce 函数返回累积的结果。

http://www.lryc.cn/news/272693.html

相关文章:

  • 软件测试基础理论学习-软件测试方法论
  • Unity 关于点击不同物品移动并触发不同事件
  • c++IO库详细介绍
  • 海外静态IP和动态IP有什么区别?推荐哪种?
  • OpenHarmony从入门到放弃(一)
  • Unity3D UGUI图集打包与动态使用(TexturePacker)
  • java maven项目添加oracle jdbc的依赖
  • 【UEFI基础】EDK网络框架(环境配置)
  • K8S学习指南(60)-K8S源代码走读之API-Server
  • 基于深度学习的交通标志图像分类识别系统
  • 使用uni-app editor富文本组件设置富文本内容及解决@Ready先于onload执行,无法获取后端接口数据的问题
  • Spring高手之路-Spring事务的传播机制(行为、特性)
  • 简易机器学习笔记(八)关于经典的图像分类问题-常见经典神经网络LeNet
  • pytest conftest通过fixture实现变量共享
  • 系列五、搭建Naco(集群版)
  • JavaScript中alert、prompt 和 confirm区别及使用【通俗易懂】
  • 【GoLang入门教程】Go语言几种标准库介绍(四)
  • 面试算法:快速排序
  • 航空业数字化展翅高飞,开源网安专业服务保驾护航
  • SpringBoot学习(三)-员工管理系统开发(重在理解)
  • 2 Windows网络编程
  • uniapp选择android非图片文件的方案踩坑记录
  • 前端发开的性能优化 请求级:请求前(资源预加载和预读取)
  • B01、类加载子系统-02
  • 用PHP搭建一个绘画API
  • 西安人民检察院 | OLED翻页查询一体机
  • superset利用mysql物化视图解决不同数据授权需要写好几次中文别名的问题
  • 输入输出流
  • IOS:Safari无法播放MP4(H.264编码)
  • Pycharm恢复默认设置