Intereting Posts
Достаточно ли проверять достоверность идентификатора $ _GET в базе данных? Выполняет ли cron-работу последнее выполнение cron? Получение данных из определенного идентификатора div Использование PHP Как установить более старую версию PHPUnit через PEAR? Предупреждение: preg_match () : Неизвестный модификатор 'v' Если isset $ _POST Присоединиться к DELETE в MySql? Как? Хранение изображений в байтовых полях в базе данных PostgreSQL Как получить URL-адрес текущего исполняемого PHP-скрипта? Глобальные функции Symfony2 Zend session_start дает фатальную ошибку: исключение выбрано без рамки стека Неизвестно в строке 0 Php Рекурсивный ввод категорий в MongoDB Как получить родительский идентификатор (родитель root) из дочернего id Отправить электронное письмо, когда произведена оплата в PayPal MYSQL Query – получать сообщения текущего пользователя, а пользователь – следующие сообщения

Как выполнить регулярное выражение URL для структуры маршрутизации?

У меня уже есть метод маршрутизации, который соответствует этому шаблону:

/hello/:name 

что заданное имя является динамическим путем, я хочу знать, как это сделать:

 /hello/{name} 

с тем же регулярным выражением. Как добавить к нему необязательную косую черту?

 /hello/:name(/) or /hello/{name}(/) 

Это регулярное выражение, которое я использую для /hello/:name

 @^/hello/([a-zA-Z0-9\-\_]+)$@D 

Регулярное выражение генерируется автоматически из класса PHP

 private function getRegex($pattern){ $patternAsRegex = "@^" . preg_replace('/\\\:[a-zA-Z0-9\_\-]+/', '([a-zA-Z0-9\-\_]+)', preg_quote($pattern)) . "$@D"; return $patternAsRegex; } 

Если маршрут есть /hello/:name(/) я хочу, чтобы это совпадение с необязательной вещью продолжалось нормально