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