我正在尝试提取id,它是url中的整数,例如:
http://example.com/email/verify/106/8be57f01ac84747886acd7ae88c888112135fc7a
我只想从PHP的字符串中提取106
。 URL中唯一动态的变量是域和 106/
之后的哈希106/
之后的域,id和哈希都是动态的。
我尝试过preg_match_all('!\d+!', $url, $result)
,但是它匹配字符串中的所有数字。
有什么提示吗?
答案 0 :(得分:1)
模式\b\d+\b
在这里可能足够具体:
$url = "http://example.com/email/verify/106/8be57f01ac84747886acd7ae88c888112135fc7a";
preg_match_all('/\b\d+\b/', $url, $matches);
print_r($matches[0]);
此打印:
Array
(
[0] => 106
)
答案 1 :(得分:0)
尝试一下。这会起作用。
$url = $_SERVER['REQUEST_URI']; //"http://example.com/email/verify/106/8be57f01ac84747886acd7ae88c888112135fc7a";
$str = explode('/',$url);
echo "<pre>";
print_r($str);
$id = $str[5]; // 106