搜索数组并返回所有键和值,当找到匹配 [英] Search array and return all keys and values when match found
本文介绍了搜索数组并返回所有键和值,当找到匹配的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想执行一个阵列上搜索,当发现匹配返回的所有值。数组中的键 [名]
是我在做什么上进行搜索。
阵列(
[0] =>排列
(
[ID] => 20120100
[链接] => www.janedoe.com
[名] =>李四
)
[1] =>排列
(
[ID] => 20120101
[链接] => www.johndoe.com
[名] =>李四
)
)
如果我做了一个搜索李四它会返回。
阵列
(
[ID] => 20120101
[链接] => www.johndoe.com
[名] =>李四
)
它会更容易重新命名根据我所寻找的阵列。相反,上述阵列我也可以生成以下。
阵列(
[李四] =>排列
(
[ID] => 20120100
[链接] => www.janedoe.com
[名] =>李四
)
[李四] =>排列
(
[ID] => 20120101
[链接] => www.johndoe.com
[名] =>李四
)
)
解决方案
$ filteredArray =
array_filter($阵列功能($元素)使用($ searchFor){
返回使用isset($元素['名'])及和放大器; $元素[名称] == $ searchFor;
});
需要PHP 5.3.x
I like to perform a search on an array and return all values when a match is found. The key [name]
in the array is what I am doing a search on.
Array (
[0] => Array
(
[id] => 20120100
[link] => www.janedoe.com
[name] => Jane Doe
)
[1] => Array
(
[id] => 20120101
[link] => www.johndoe.com
[name] => John Doe
)
)
If I did a search for John Doe it would return.
Array
(
[id] => 20120101
[link] => www.johndoe.com
[name] => John Doe
)
Would it be easier to rename the arrays based on what I am searching for. Instead of the above array I can also generate the following.
Array (
[Jane Doe] => Array
(
[id] => 20120100
[link] => www.janedoe.com
[name] => Jane Doe
)
[John Doe] => Array
(
[id] => 20120101
[link] => www.johndoe.com
[name] => John Doe
)
)
解决方案
$filteredArray =
array_filter($array, function($element) use($searchFor){
return isset($element['name']) && $element['name'] == $searchFor;
});
Requires PHP 5.3.x
这篇关于搜索数组并返回所有键和值,当找到匹配的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文