Задать вопрос
ddimonn8080
@ddimonn8080

Как исключить всё кроме определённых символов в регулярном выражении?

Здравствуйте, как исключить, например, буквы из данных полученных с помощью $_SERVER['REQUEST_URI']?
Например есть массив
$routes = array('product/([0-9]+) => 'product/index');
$uri = trim($_SERVER['REQUEST_URI'], '/');

При проверке
foreach ($routes as $uriPattern => $path) {
    echo (preg_match("~$uriPattern~", $uri) . '<br/>');
}

запрос product/12 также как и запрос product/12someword дают 1.
Как сделать чтобы запрос типа product/12someword возвращал 0? То есть было более строгое совпадение с паттерном.
  • Вопрос задан
  • 262 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Skillbox
    PHP-разработчик. Базовый уровень
    3 месяца
    Далее
Решения вопроса 2
Melkij
@Melkij
DBA для вашего PostgreSQL?
Ну так и ограничьте начало и конец совпадения. Спецсимволы ^ и $.
Ответ написан
Комментировать
DevMan
@DevMan
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
MaxDukov
@MaxDukov
впишусь в проект как SRE/DevOps.
добавьте признак конца строки ^
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы