为了账号安全,请及时绑定邮箱和手机立即绑定

在 php 中过滤适合者数组的数组

在 php 中过滤适合者数组的数组

PHP
慕虎7371278 2022-09-30 16:53:41
例如,如何从php中的以下数组中删除基于键或基于值的项。$array[testing3]Template3$array = array(    'mentor' => 'Template',    'mentor1' => 'Template1',    'testing' => 'Template2',    'testing3' => 'Template3',    'testing4' => 'Template4',    'testing5' => 'Template5',    'testing6' => 'Template6');
查看完整描述

3 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

让我们用它来实现目标。array_filter()


$array = array(

    'mentor' => 'Template',

    'mentor1' => 'Template1',

    'testing' => 'Template2',

    'testing3' => 'Template3',

    'testing4' => 'Template4',

    'testing5' => 'Template5',

    'testing6' => 'Template6'

);

删除数组中的项,例如,Template3


$filtered_array1 = array_filter($array, function($val) {

    return 'Template3' != $val;

});


print_r($filtered_array1);

删除数组中除数组之外的所有元素Template3


$filtered_array2 = array_filter($array, function($val) {

    return 'Template3' == $val;

});


print_r($filtered_array2);

到目前为止,我们使用值来过滤数组。您也可以根据以下条件过滤数组。您需要对函数使用第三个参数。第 3 个参数有两个选项 - 和 。您可以使用其中之一。让我们使用 flag 来删除基于 的项,例如:keyARRAY_FILTER_USE_KEYARRAY_FILTER_USE_BOTHARRAY_FILTER_USE_KEYkeytesting3


$filtered_array3 = array_filter($array, function($key) {

    return 'testing3' != $key;

}, ARRAY_FILTER_USE_KEY);


print_r($filtered_array3);

要了解有关功能的更多信息,请参阅此文档array_filter()


查看完整回答
反对 回复 2022-09-30
?
繁星coding

TA贡献1797条经验 获得超4个赞

您可以使用 unset() 来实现此目的:

unset(myArray['testing3']);


查看完整回答
反对 回复 2022-09-30
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

您可以使用 (https://www.php.net/unsetunset)


$array = array(

  'mentor' => 'Template',

  'mentor1' => 'Template1',

  'testing' => 'Template2',

  'testing3' => 'Template3',

  'testing4' => 'Template4',

  'testing5' => 'Template5',

  'testing6' => 'Template6');


  unset($array['testing3']);

或者,如果您需要按可以使用的值找到它(https://www.php.net/array-searcharray_search)


// Remove the element if it exists

if($element = array_search("Template3",$array)){

  unset($array[$element]);

}

要回答注释中提出的有关仅保留您要查找的数组元素的问题:使用并覆盖数组(或从中创建一个新数组)。array_search


$array = array_search('Template3', $array);


查看完整回答
反对 回复 2022-09-30
  • 3 回答
  • 0 关注
  • 112 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信