首页 > 代码库 > 在一个数组中搜索是否可以跟给定数组相匹配的键和值并返回
在一个数组中搜索是否可以跟给定数组相匹配的键和值并返回
$args = array(‘first_name‘=>‘Brenda‘,‘last_name‘=>‘Buzzard‘,‘name‘=>‘Flank‘); $values[] = array(‘first_name‘=>‘Brenda‘,‘last_name‘=>‘Buzzard‘,‘name‘=>‘Flank‘); $values[] = array(‘first_name‘=>‘Victor‘,‘last_name‘=>‘Vulture‘,‘name‘=>‘Frank‘); $values[] = array(‘first_name‘=>‘Bill‘,‘last_name‘=>‘Blue Jay‘); $values[] = array(‘first_name‘=>‘Bill‘,‘last_name‘=>‘Buzzard‘); $result = search_for($values,$args); function search_for($array,$args) { $results = array(); foreach ($array as $row) { $found = false; $hits = array(); foreach ($row as $k => $v) { if (array_key_exists($k,$args)){ $hits[$k] = ($args[$k] == $v); } } $found = array_product($hits); if (!in_array($row,$results) && true == $found) $results[] = $row; } return $results; }
手册里的评论,关于灵活使用array_product和array_key_exists函数来搜寻一个数组是否在另一个数组里。感觉方法挺不错,做个记录!
在一个数组中搜索是否可以跟给定数组相匹配的键和值并返回
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。