首页  >  文章  >  后端开发  >  如何创建 PHP 函数来根据值过滤二维数组?

如何创建 PHP 函数来根据值过滤二维数组?

Linda Hamilton
Linda Hamilton原创
2024-11-27 05:44:11672浏览

How Can I Create a PHP Function to Filter a Two-Dimensional Array Based on Value?

创建一个基于值的二维数组过滤函数

从多维数组中过滤特定数据是一个常见的任务编程。此任务可以使用各种技术来完成,包括 PHP 的 array_filter 函数。

函数创建

要创建按值过滤二维数组的函数,请遵循以下步骤步骤:

  1. 定义函数,输入数组为参数。
  2. 使用带有匿名或回调函数的 array_filter 作为第二个参数。
  3. 在回调函数内,使用条件逻辑指定过滤条件。

示例实现

考虑以下内容数组:

$arr = [
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'NEW',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'CALL1',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Finance',
        'status' => 'CALL2',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Partex',
        'status' => 'CALL3',
        'appointment' => 0
    ]
];

要过滤此数组以查找“name”键中包含“CarEnquiry”的值:

function filterArrayByName($arr) {
    return array_filter($arr, function($var) {
        return $var['name'] == 'CarEnquiry';
    });
}

可自定义过滤

为了使搜索值可以互换,请将回调函数修改为如下:

function filterArrayByName($arr, $filterBy) {
    return array_filter($arr, function($var) use ($filterBy) {
        return $var['name'] == $filterBy;
    });
}

现在您可以使用该函数按“name”键中的任何所需值过滤数组。

以上是如何创建 PHP 函数来根据值过滤二维数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn