Я строю меню на бэкэнде, заполненном массивом и вложенными массивами.
Структура находится на config.php..
$primary_nav = array(
array(
'name' => 'Μέλη',
'url' => 'member_list.php',
'icon' => 'fa fa-users',
'access'=> 0
),array(
'name' => 'Ημερίδες',
'url' => ($usr['access_level'] == 1) ? 'imerides_list.php':'javascript:void(0)',
'icon' => 'fa fa-bullhorn',
'access'=> 1
)
);
На пользователей класса, где он получает уровень доступа, я добавил
if($row['access_level'] != 1){
unset($primary_nav[1]);
}
Как я могу сделать это как, if access level == 1
удалить массив parent
?
Я старался unset($primary_nav[1])
а также array_slice
но они не работают.
Извините, люди, я только что заметил, я говорю, класс пользователей, где это класс пользователей, а пользователь является публичной функцией, не передавая $ primary_nav, поэтому он не видел массив, чтобы сбросить его …
Вы можете сделать следующее:
$primary_nav = array(
array(
'name' => 'Μέλη',
'url' => 'member_list.php',
'icon' => 'fa fa-users',
'access'=> 0
),array(
'name' => 'Ημερίδες',
'url' => 'test',
'icon' => 'fa fa-bullhorn',
'access'=> 1
)
);
foreach($primary_nav as $index=>$obj){
if($obj['access']==1){
unset($primary_nav[$index]);
}
}
print_r($primary_nav);
Try It ,May Help You .
$primary_nav = array(
array(
'name' => 'Sourabh',
'url' => 'member_list.php',
'icon' => 'fa fa-users',
'access'=> 0
),array(
'name' => 'Nigam',
'url' => ($usr['access_level'] == 1) ? 'imerides_list.php':'javascript:void(0)',
'icon' => 'fa fa-bullhorn',
'access'=> 1
)
);
foreach ($primary_nav as $key=>$primary) {
foreach ($primary as $vkey=>$value) {
if($vkey=='access' AND $value==1){
unset($primary_nav[$key]);
}
}
}
echo '<pre>';
print_r($primary_nav);