我有一个类似于此的网址:
http://somethinfs.com/folder/134039/the_title_of_somethings.html http://somethinfs.com/folder/184738/the_title_of_somethings_else.html
从这个URL,我需要提取“134039”和“184738”。
我试过使用strpos和substr但它不起作用,它只返回.html
。
答案 0 :(得分:7)
$a = parse_url("http://somethinfs.com/folder/184738/the_title_of_somethings_else.html");
$b = explode("/", $a['path']);
echo $b[2];
输出为184738
答案 1 :(得分:4)
if (preg_match('!/(\d+)/!', $url, $matches)) {
echo $matches[1];
}
答案 2 :(得分:2)
爆炸链接/
http:/ /somethinfs.com/folder/134039/the_title_of_somethings.html
0 1 2 3 4 5
所以...
$tmp = explode('/', $url);
$your_id = $tmp[4];
你也可以使用regexp作为deceze说:)
答案 3 :(得分:0)
这有效,但会返回所有数字:
$number = preg_replace("/[^0-9]/", '', "http://somethinfs.com/folder/134039/the_title_of_somethings.html");
echo $number ;