Salve,
ho il seguente array $menusTopUser,
dove ho la necessita visualizzare solo i record che corrispondo alle seguenti condizioni:
1) $menuTopUser['MenusUserGroup'] è vuoto;
2) $menuTopUser['MenusUserGroup']['user_group_id'] è uguale a $this->Auth->user('UserGroup.id')
Codice PHP:
Array(
[0] => Array
(
[Menu] => Array
(
[title] => Offerte e modulistica promoter
[url] =>
[target] => _self
[id] => 11
)
[Item] => Array
(
[slug] => offerte-e-modulistica-promoter
[id] => 36
)
[Language] => Array
(
[ISO-639-2] => ita
[id] => 1
)
[TemplateRegion] => Array
(
[id] => 10
)
[MenusUserGroup] => Array
(
)
)
[1] => Array
(
[Menu] => Array
(
[title] => Offerte e modulistica agenti
[url] =>
[target] => _self
[id] => 10
)
[Item] => Array
(
[slug] => offerte-modulistica
[id] => 29
)
[Language] => Array
(
[ISO-639-2] => ita
[id] => 1
)
[TemplateRegion] => Array
(
[id] => 10
)
[MenusUserGroup] => Array
(
[0] => Array
(
[id] => 7
[menu_id] => 10
[user_group_id] => 5
)
)
)
[2] => Array
(
[Menu] => Array
(
[title] => Gestione contratti
[url] =>
[target] => _self
[id] => 13
)
[Item] => Array
(
[slug] =>
[id] =>
)
[Language] => Array
(
[ISO-639-2] => ita
[id] => 1
)
[TemplateRegion] => Array
(
[id] => 10
)
[MenusUserGroup] => Array
(
[0] => Array
(
[id] => 10
[menu_id] => 13
[user_group_id] => 5
),
[1] => Array
(
[id] => 11
[menu_id] => 13
[user_group_id] => 4
)
)
)
Dopo svariati tentativi ho prodotto il seguente codice ma senza risultati sperati, potete dargli un occhiata per favore?
Codice PHP:
foreach ($menusTopUser as $k => $menuTopUser) {
if (!empty($menuTopUser['MenusUserGroup'])) {
$userOk = false;
foreach ($menuTopUser['MenusUserGroup'] as $menuTopUserJ) {
if ($menuTopUserJ['user_group_id'] == $this->Auth->user('UserGroup.id')) {
// pr($menuTopUserJ);
$userOk = true;
}
}
if(!$userOk) unset($menuTopUser[$k]);
}
}
pr($menusTopUser);
$this->set(compact('menusTopUser'));