@sgnatyuk
Web Developer

Маршрутизация для интернет-магазина PHP?

Пишу свой велосипед, маршрутизацию для интернет-магазина. Задача стоит такая: есть таблица категорий товаров с полями category_id, parent_id, slug и т. д. В категорию можно перейти по get-параметрам указав контроллер и category_id, либо по ЧПУ. Изначально было задумано парсить ЧПУ и рекурсивно обходить категории в поиске category_id последнего сегмента (название сегментов, т. е. slug будет уникально для каждого уровня). Конечно же при каждом запросе выполнять рекурсивный поиск категории не лучшая идея, поэтому я решал делать это один раз при сохранении и записывать готовый маршрут в таблицу c полями (category_id, route). И уже при запросе проверить наличие данного маршрута в этой таблицы получить category_id. Так вот, насколько это удачное решение проблемы, таблица может сильно разрастись и время поиска возрастет. Я знаю, если известно число сегментов ЧПУ маршрут можно определить по шаблону, например /blog/{article_id}. Но если число сегментов заранее не известно, надо как-то хранить эти адреса. Как лучше это реализовать? Посоветуйте актуальные практики или может существует более элегантное решение.
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы