我有一个数组数组:
Array ( [0] => Array ( [Name] => news/edit )
[1] => Array ( [Name] => news/show ) )
我有以下两个变量:
$module = 'news';
$action = 'show';
我想查看我的数组是否包含news/show
或$module/$action
我可以在这里使用explode,但我只能爆炸一个数组。
答案 0 :(得分:2)
您可以使用array_search:
$array = array(array("Name" => "news/edit" ), array("Name" => "news/show"));
$module = 'news';
$action = 'show';
var_dump(array_search(array("Name" => "$module/$action"), $array));
// int(1)
答案 1 :(得分:1)
为什么不在检查前连接字符串?像这样:
function doesArrayContainModuleAction($array, $module, $action) {
foreach($array as $subarray) {
if($subarray['Name'] == "$module/$action") return true;
}
return false;
}
答案 2 :(得分:0)
你在寻找这个吗?
$new_array=array_map(function($x){
$y= explode('/',$x['Name']);
return array('module'=>$y[0],'show'=>$y[1]);
},$array);