在PHP中提取字符串的特定部分

时间:2010-06-25 08:23:09

标签: php string

我只是想知道在PHP中提取动态字符串的某个部分最简单有效的方法是什么?

每个例子,在这个字符串中:

http://www.dailymotion.com/video/xclep1_school-gyrls-something-like-a-party_music#hp-v-v13

我只想提取(并在变量中插入):“xclep1_school-gyrls-something-like-a-party_music”。

主要目标是使用此部分,将其插入此网址:http://www.dailymotion.com/thumbnail/160x120/video/xclep1_school-gyrls-something-like-a-party_music,以便我可以在外部捕获缩略图。

很抱歉,如果这是一个“新手”问题,非常感谢你的时间。任何提示/代码/ php引用都很受欢迎。

4 个答案:

答案 0 :(得分:12)

尝试使用正则表达式parse_url

$segments = explode('/', parse_url($url, PHP_URL_PATH));

$ segments将是一个包含路径信息所有段的数组,例如

Array
(
    [0] => 
    [1] => video
    [2] => xclep1_school-gyrls-something-like-a-party_music
)

所以你可以做到

echo $segments[2];

并获取

`xclep1_school-gyrls-something-like-a-party_music`

答案 1 :(得分:3)

以下其中一项:

preg_match('~/[^/]*$~', $str, $matches);
echo $matches[0];

或者:

$parts = explode('/', $str);
echo array_pop($parts);

或者:

echo substr($str, strrpos($str, '/'));

答案 2 :(得分:2)

parse_url()函数并提取路径。爆炸'/'并获取最后一个元素

答案 3 :(得分:1)

试试这个

$url = $_SERVER['REQUEST_URI'];
$parsed_url = parse_url($url);
$url_parts = explode('/',$parsed_url['path']);
print_r($url_parts);