【发布时间】:2021-12-13 05:26:45
【问题描述】:
我有一个多维关联数组。我需要遍历数组并将一个值放入另一个函数,该函数返回一个布尔值,该布尔值将是数组中另一个成员的值。见下文。
多维数组:
$grouparray = array(
"428995" => array(
"group" => "Meetings In Camera - Read",
"access" => false
),
"896325" => array(
"group" => "Meetings In Camera - Modify",
"access" => false
),
"485563" => array(
"group" => "Security Meetings - Modify",
"access" => false
),
"556321" => array(
"group" => "TAC Meetings - Modify",
"access" => false
),
"658823" => array(
"group" => "Restricted Meeting - Modify",
"access" => false
),
"985465" => array(
"group" => "Admin Meetings - Modify",
"access" => false
),
);
我有一个查询 ldap 并返回 true 或 false 的函数。 我尝试了嵌套 for 循环,但访问值没有被更改。但是,如果我单独运行它们,它会按预期工作。
这行得通(但必须为数组中的每个项目做):
checkGroupMembership($ldap, $user, $grouparray[428995]['group']);
但是,这不起作用
function groupSearch($ldapconn, $user, $grouparray) {
foreach ($grouparray as $key => $value) {
foreach ($value as $sub_key => $sub_value) {
$grouparray[$sub_value][access] = checkGroupMembership($ldap, $user, $grouparray[$sub_value]['group]); // this returns true or false
}
}
}
所以基本上我想通过数组循环使用“组”作为另一个函数的输入,该函数将布尔值返回给“访问”
【问题讨论】:
标签: php arrays multidimensional-array associative-array