@Porovozow

Как написать регулярное выражение в PHP?

Всем доброго вечера! Возник такой вопрос. Не судите строго, только начинаю постигать азы программирования на PHP.

Суть: по урокам на YouTube создал MVC каркас. В нем есть роутер, который читает URI и, в зависимости от маршрута, вызывает нужный контроллер. Для проверки используются маршруты. Вот они:

return array(
'a/([a-zA-Z0-9-]+)' => 'main/article/$1',
't/([a-zA-Z0-9-]+)' => 'main/theme/$1',
's/([a-zA-Z0-9-]+)' => 'main/search/$1',
'' => 'main/home',
);

Проблема вот в чем: если строка пуста, или стоит a, t или s (прим. site.ru/a/123) контроллер нормально открывается, тот вызывает метод и так по цепочке. Но если в URI ввести отличные от указанных значения, вылетает ошибка. Пониманию, что это из-за маршрутов. Я бы хотел, чтобы, когда в строке запроса указывалось другое значение, открывалась страница 404. Но вот какое регулярное выражение для него написать?
  • Вопрос задан
  • 137 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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