Задать вопрос
@Alk90
php, mysql, jquery, css, html, api

Куда поместить дополнительный параметр в маршрутизаторе?

Всем привет! Пытаюсь написать маршрутизатор и у меня получается такая структура. для примера возьмем такую ссылку: site.ru/user333/albums
Для него я создал вот такой роут:
'user([0-9]+)/?(?P<action>[a-z_]+)?' => ['controller'=> 'profile'],

Получается так, что контроллер == profile, action (метод) == albums.
Разбивая этот адрес, я запускаю такой метод: Profile->albumsAction();, ну и получаю альбомы пользователя.

Но, что если я хочу перейти в определенный альбом, вот по такой ссылке:
site.ru/user333/albums/1531344
1531344 - ID альбома.

Куда мне отнести этот ID? Ведь контроллер занят, метод тоже занят.
  • Вопрос задан
  • 30 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Kulaxyz
@Kulaxyz
Могу лучше
Разбивать по слэшу адрес и третий параметр, если он существует, передавать как параметр в action.
Ну а сам action с id=NULL разбить на 2 части (if else), если параметр передан и если он NULL.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽