当我们需要在二维数组中查找指定元素或元素集合时,可以采用array_search与array_column函数进行快速匹配。
下面是实现该过程的具体步骤:
1.构建指定二维数组
需要先创建一个需要查找的二维数组,例如:
$users = [
['id'=>1, 'name'=>'Tom', 'age'=>20],
['id'=>2, 'name'=>'Jerry', 'age'=>25],
['id'=>3, 'name'=>'David', 'age'=>18],
['id'=>4, 'name'=>'Lucy', 'age'=>22],
['id'=>5, 'name'=>'Clare', 'age'=>25],
];
2.查找单个元素位置
如果要查找单个元素,可以使用array_search函数:
$index = array_search(25, array_column($users, 'age'));
该函数在$users数组的'age'列中查找为25的元素,并返回该元素在数组中的索引位置。如果查找到多个相同元素,返回第一个匹配项的索引位置。如果未找到匹配项,则返回false。
3.查找多个元素
如果需要查找匹配多个元素的位置,可以使用如下代码:
$indexArr = array_keys(array_column($users, 'age'), 25);
该函数在$users数组的'age'列中查找所有为25的元素,并返回该元素在数组中的索引位置数组。如果未找到任何匹配项,则返回空数组。
示例:
$users = [
['id'=>1, 'name'=>'Tom', 'age'=>20],
['id'=>2, 'name'=>'Jerry', 'age'=>25],
['id'=>3, 'name'=>'David', 'age'=>18],
['id'=>4, 'name'=>'Lucy', 'age'=>22],
['id'=>5, 'name'=>'Clare', 'age'=>25],
];
// 查找'Clare'所在的位置
$index = array_search("Clare", array_column($users, 'name'));
// 输出结果:4
// 查找年龄为25岁的人所在的位置
$indexArr = array_keys(array_column($users, 'age'), 25);
// 输出结果:Array ( [0] => 1 [1] => 4 )
以上就是利用array_search与array_column实现二维数组查找的攻略。有了这个方法,查找指定元素或元素集合将变得更加简单高效。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php利用array_search与array_column实现二维数组查找 - Python技术站