こんにちは、このコードを使用して私の URL の ID を取得しています
$string = $url;
$matches = array();
preg_match_all('/.*?\/(\d+)\/?/s', $string, $matches);
$id = $matches[1][0];
このコードは、次のような URL に対して機能します
http://mysite.com/page/1
http://mysite.com/page/somepage/2
http://mysite.com/page/3/?pag=1
id = 1 / id = 2 / id = 3 になります
しかし、このようなURLの場合
http://mysite.com/page/122-page-name/1
これは id = 122 を返します
取得しようとしている ID は、常に URL の最後の部分になるか、/?p= の後にあります
だから私が持つことができるURLタイプ
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