按特定值过滤多维数组可以通过各种编程技术来完成。在 PHP 中,array_filter 函数提供了一种方便的方法来实现此目的。
过滤二维数组维数组由特定值表示,可以使用 array_filter 函数和回调函数。回调函数应该评估数组的每个元素,如果满足所需的条件,则返回 true。
例如,考虑给定的数组,我们要通过值为 'CarEnquiry 的 'name' 键进行过滤':
$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 ] ];
以下代码片段演示了如何过滤数组:
$new = array_filter($arr, function ($var) { return ($var['name'] == 'CarEnquiry'); });
在本例中,回调函数($var['name'] == 'CarEnquiry') 检查每个数组元素的 'name' 值是否等于 'CarEnquiry'。如果为 true,则该元素包含在过滤数组 ($new) 中。
如果过滤器值需要互换,例如如“CarEnquiry”或“Finance”,可以对回调进行轻微修改函数:
$filterBy = 'CarEnquiry'; // or Finance etc. $new = array_filter($arr, function ($var) use ($filterBy) { return ($var['name'] == $filterBy); });
通过引入 $filterBy 变量,过滤条件变得动态,允许根据需要按不同值进行过滤。
以上是如何在 PHP 中根据特定键的值过滤二维数组?的详细内容。更多信息请关注PHP中文网其他相关文章!