我有一个页面:
http://somewebsite.com/1234/test/
如何使用PHP正则表达式从中提取1234
?
答案 0 :(得分:5)
答案 1 :(得分:2)
如果我不需要它,我喜欢避免正则表达式,所以我建议你这样做:
$url = explode("/", $_SERVER['PHP_SELF']);
然后你可以使用它来引用你想要的网址部分:
$url[1]
如果您需要/想要使用正则表达式,我会考虑一下,然后尝试发布解决方案。
答案 2 :(得分:1)
要获得上面的那个,你可以使用
echo dirname("http://www.google.com/cake/lol");
输出
或者只是/和/之间的位可以做
var_dump(explode("/", "http://www.google.com/cake/lol"));
或者在正则表达式中
preg_match_all('@/([^/]*)/@',$sourcestring,$matches);
答案 3 :(得分:0)
在$_SCRIPT['REQUEST_URL']
上执行正则表达式或将其拆分为'/'并获取第一个元素=> 1234
答案 4 :(得分:0)
如果通过启动该URL触发了PHP,那么这些可能就是这样:
$_SERVER['REQUEST_URI'] == "/1234/test/"
dirname($_SERVER['REQUEST_URI']) == "/1234"
basename(dirname($_SERVER['REQUEST_URI'])) == "1234"
答案 5 :(得分:0)
preg_match(".*\/(\w+)\/(\w+)\/", "$url", $matches);
父目录为$matches[1]
。