从php中的url中提取值

时间:2011-11-17 13:28:16

标签: php url substr strpos

我有一个类似于此的网址:

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

4 个答案:

答案 0 :(得分:7)

parse_urlexplode的混合物可以做到。

$a = parse_url("http://somethinfs.com/folder/184738/the_title_of_somethings_else.html");
$b = explode("/", $a['path']);
echo $b[2]; 

输出为184738

答案 1 :(得分:4)

看哪regular expressions

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 ;