大家好,我正在使用此代码获取我的网址上的 id
$string = $url;
$matches = array();
preg_match_all('/.*?\/(\d+)\/?/s', $string, $matches);
$id = $matches[1][0];
这段代码适用于像这样的网址
http://mysite.com/page/1
http://mysite.com/page/somepage/2
http://mysite.com/page/3/?pag=1
我将有 id = 1 / id = 2 / id = 3
但是对于这样的网址
http://mysite.com/page/122-page-name/1
这将返回 id = 122
我尝试获取的 id 将始终是 url 的最后一部分,或者将有 /?p= 之后
所以我可以拥有的网址类型
http://mysite.com/page/1
http://mysite.com/page/some-page/2
http://mysite.com/page/12-some-name/3
http://mysite.com/page/some-page/4/?p=1
http://mysite.com/page/13-some-page/5/?p=2
id = 1 / id = 2 / id = 3 / id = 4 / id = 5