我正在使用PHP,我有一个多维数组,其中包含有关用户组的数据,该数组的当前设置如下。
$groups = array(
10 => array("name" => "Admin", (etc)),
5 => array("name" => "Standard", (etc))
);
用户将拥有一个组值,该值将是“Admin”或“Standard”,但由于这些值不是数组中的键值,我不知道我将如何搜索字符串子数组中的值。
我可以更改为基于整数的级别系统,但我更愿意这样做。
所以我的问题是,如何在不知道主键数值的关键值的情况下搜索多维数组的值?
答案 0 :(得分:2)
试试这个:
$admins = array_filter($groups, function($data) {
return $data['name'] == 'Admin';
});
答案 1 :(得分:0)
浏览它:)
$admins = array();
$standards = array();
foreach($groups AS $group)
{
// Search for administrators in the 1-dimension array.
$admins = array_merge($admins, array_keys($group, "Admin"));
// Search for standard users in the 1-dimension array.
$standards = array_merge($standards, array_keys($group, "Standard"));
}
使用1维数组后,您可以使用array_search
或array_keys
等功能。您可以在PHP手册中找到有关上述功能的更多信息。