PHP前端开发

PHP函数面试必备知识点,解密数组处理函数的用法

百变鹏仔 1个月前 (12-15) #PHP
文章标签 函数

PHP 函数面试必备知识点:解密数组处理函数的用法

数组处理是 PHP 中必不可少的技能。掌握 array_map()、array_filter() 和 array_reduce() 等函数对于高效处理数据至关重要。

array_map()

用法: 将给定的回调函数应用到数组中的每个元素。

$numbers = [1, 2, 3, 4, 5];$squaredNumbers = array_map(fn ($n) => $n ** 2, $numbers);

array_filter()

用法: 使用给定的回调函数过滤数组元素,仅返回经过过滤的元素。

$words = ['apple', 'banana', 'cherry', 'dog', 'cat'];$filteredWords = array_filter($words, fn ($word) => strlen($word) > 3);

array_reduce()

用法: 将数组元素减少为单个值,使用给定的回调函数作为累加器。

立即学习“PHP免费学习笔记(深入)”;

$numbers = [1, 2, 3, 4, 5];$sum = array_reduce($numbers, fn ($acc, $n) => $acc + $n);

实战案例:

让我们创建一个简单的购物车系统来演示数组处理函数的用法:

$cart = [    ['product' => 'Apple', 'quantity' => 2],    ['product' => 'Orange', 'quantity' => 1],    ['product' => 'Banana', 'quantity' => 3],];// 计算总数量$totalQuantity = array_reduce($cart, fn ($acc, $item) => $acc + $item['quantity']);// 过滤商品数量大于 2 的项$filteredCart = array_filter($cart, fn ($item) => $item['quantity'] > 2);// 以商品名称为键映射商品信息$indexedCart = array_map(fn ($item) => [$item['product'] => $item], $cart);