Это нормально, когда роутер выдает столько информации? 'route' => ['type', 'name', 'path', 'url', 'matches', 'controller', 'action']'/blog/{id}' => ['module', 'Blog', 'modules/blog/', '/blog/post-name', ['id' => 'post-name'], 'post', 'show']
type - app, module...
path - путь до корневой папки приложения. Так выглядят пути app/, modules/blog/, modules/commerce/...
url - собственно текущий url
mathces - id (user/{id})
type и path получаю во время сбора роутов, url и matches при сравнении, а controller и action находились первоначально в файле с роутами.
Пример, получение файла с конфигом:$config = $array['path'] . 'config/' . $name . '.php';
Если нет, то каким образом получать type и path?

18 Июн 2020 в 19:50
203 +1
0
Ответы
1

Да, это вполне нормально, что ваш роутер предоставляет столько информации о маршруте. Каждый элемент в массиве роута ('route') имеет свою собственную цель и предназначен для определения различных аспектов маршрута, таких как тип маршрута, путь, URL, параметры совпадения, контроллер и действие.

Что касается вопроса о том, как получить тип и путь роута, если они не указаны явно в файле с роутами, то можно попытаться определить их автоматически на основе других свойств маршрута. Например, тип маршрута ('type') можно определить по его пути ('path') - если путь начинается с 'modules/', то это, вероятно, маршрут модуля, а если путь начинается с 'app/', то это, вероятно, маршрут приложения. Путь к корневой папке приложения ('path') можно также получить, например, из URL маршрута или из других свойств маршрута.

В целом, идея автоматического определения типа и пути маршрута звучит разумно, если ваши роуты имеют структуру именования, которую можно использовать для определения этих атрибутов.

18 Апр 2024 в 10:58
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир