У меня есть строка
$path = '/user/5';
Мне нужно извлечь число 5 из нее, я могу проверить ее регулярным выражением:
preg_match('/\/user\/[0-9]/', $path, $matches)
Но в данном случае $matches будет равен $path (var_dump $matches):
array(1) { [0]=> string(7) "/user/5" }
Как максимально быстро извлечь 5?
Ответ
В своем выражении, вы не объявляете группировку ([0-9]+), нужно брать в круглые скобки, попробуйте так:
$path = '/user/5';
preg_match('~/user/([0-9]+)~', $path, $matches);
echo $matches[1];
Комментариев нет:
Отправить комментарий