$menuItems = [
"menu_title" => [
"view_type" => [
"name" => "display_name",
"url" => "?p=view_type&t=menu_title",
],
],
];
< /code>
Где "menu_title" и "view_type" будут действовать как ключи для основного массива и вторичного массива, но также будут действовать как значения URL Paramenters. Например: < /p>
$menuItems = [
"user_accounts" => [
"list" => [
"name" => "User list",
"url" => "?p=list&t=user_accounts",
],
"edit" => [
"name" => "Edit user",
"url" => "?p=edit&t=user_accounts",
],
],
"user_profile" => [
"list" => [
"name" => "Profile list",
"url" => "?p=list&t=user_profile",
],
],
];
< /code>
Есть ли способ, с помощью которого я мог бы охватить значение массива, это собственное имя ключа? Что -то вроде < /p>
$menuItems = [
"menu_title" => [
"view_type" => [
"name" => "display_name",
"url" => "?p=&t=",
],
],
];
< /code>
Для дальнейшего контекста, после определения массива, я использую его для определения само меню с помощью функции: < /p>
$this->addMenu("Users", [
$menuItems["user_accounts"]["list"]["name"] => $menuItems["user_accounts"]["list"]["url"],
]);
< /code>
Я знаю, что могу использовать key () или array_search () или array_keys () и т. Д. быть объявленным - чего я хочу достичь, так это отдать от себя откровение ключевого имени, пока массив построен, так что мне не нужно проходить в игре, просто чтобы сделать это. < /p>
или я Можно просто обойти и определить часть, которая нуждается в значениях URL -адреса при определении самого меню, или просто введите значения, если я все равно набираю имена ключей: < /p>
$this->addMenu("Users", [
$menuItems["user_accounts"]["list"]["name"] => "?p=list&t=user_accounts",
]);
< /code>
Но я ищу способ избежать этого, потому что люди, кроме меня, будут использовать это для определения новых пунктов меню или отредактировать их, и всякий раз, когда есть вход пользователя, есть Обязательно будет печатать ошибки, или они упускают изменение значений URL -адреса и так далее. Мой EndGoal был бы: < /p>
- Если пользователь хочет переименовать пункт меню или изменить URL, он должен только сделать это в «Главном» "Массив, и изменение будет автоматически распространяться на функцию генерирования меню < /p>
< /li>
Если пользователь определяет новый пункт меню, мне нужно только они Определите его имя, просмотреть и отображать имя, без них, не нужно обращать внимание на сам URL
Подробнее здесь: https://stackoverflow.com/questions/794 ... g-an-array
Мобильная версия