有没有人知道如何从这个preg_match获取int?它只显示了我的URI。
$uri = "/user/view/2";
$pattern = "/user/view/[0-9]+";
if(preg_match('#^' . $pattern . '$#', $uri, $matched)) {
print_r($matched);
}
else {
echo "No match!";
}
答案 0 :(得分:2)
您的模式中没有捕获组。变化:
$pattern = "/user/view/[0-9]+";
要:
$pattern = "/user/view/([0-9]+)";
它将在$matched[1]
。
答案 1 :(得分:0)
您可以使用T-Regx并进入
pattern('^/user/view/[0-9]+$')->match($uri)
->forFirst(function (Match $match) {
$int = $match->group(1);
print_r($int);
})
->orReturn("No match!");
您不必用#
来定界!