У меня есть следующий массив для отображения меню в порядке, указанном пользователем.
Массив выглядит следующим образом:
$menuArray = [
'Main Street' => [
['/index.php', 'Home'],
['/city.php', $cityData[$user->city][0]],
['/travel.php', 'Travel'],
['/bank.php', 'Bank'],
['/inventory.php', 'Inventory'],
['/dailies.php', 'Dailies'],
],
'Activities' => [
(!$my->hospital) ? ['/hospital.php', 'Hospital'] : [],
(!$my->hospital && !$my->prison) ? ['/crime.php', 'Crime'] : [],
['/missions.php', 'Missions'],
['/achievements.php', 'Achievements'],
],
'Services' => [
['/hospital.php', 'Hospital'],
['/prison.php', 'Prison'],
['/search.php', 'Search'],
],
'Account' => [
['/edit_account.php', 'Edit Account'],
['/notepad.php', 'Notepad'],
['/logout.php', 'Logout'],
]
];
У меня есть столбец menu_order
, хранящийся в базе данных, который имеет значение по умолчанию 0,1,2,3,4
, но это может измениться для каждого пользователя, так как они смогут изменить свое меню на «лайки».
Чего бы я хотел достичь:
0 => Main Street
1 => Activities
2 => Services
3 => Account
4 => Communication
Чтобы получить порядок меню, я делаю
$menuOrder = explode(',', $user->menu_order);
Но я не уверен, как обращаться с foreach для отображения меню.