2013-10-30 62 views
0

我有這種從YouTube網址中,與視頻的價值從網址獲取一些價值?

$url='http://www.youtube.com/watch?v=H_IkPia6eBA&'; 

我需要的僅僅是在這種情況下

$newstring='H_IkPia6eBA&'; 

我不知道得到採用V等新的價值串v如何長的可能是,只是我需要得到的V這個值,我曾嘗試

$string = 'http://www.youtube.com/watch?v=oYyslNuRcwM'; 
$url = parse_url($string); 
parse_str($url['query'], $query); 

print_r($query); 

這種嘗試,但在笨後,我只得到空數組?

+0

檢查這個【答案】(http://stackoverflow.com/questions/9522868/how-do-i-get-a-youtube-video-id-php) –

+0

您的代碼對我很好,只是複製和粘貼,我得到:'Array ( [v] => oYyslNuRcwM )' – AbraCadaver

+0

您確定設置了'$ string'嗎? var_dump($ string);輸出是什麼?另外,添加'ini_set('display_errors',1); error_reporting(E_ALL);'到您的PHP代碼的頂部並刷新頁面。這是否輸出任何錯誤? –

回答

3

你幾乎已經在那裏了。

<?php 
$string = 'http://www.youtube.com/watch?v=oYyslNuRcwM'; 
$url = parse_url($string); 
parse_str($url['query'], $query); 
$newstring=$query["v"]; // just this line is missing 
echo $newstring; 
?> 

Demo

但是,你知道嗎?如果網址格式總是如此,那麼不需要所有這些功能。然後,它可以簡單地

<?php 
$url='http://www.youtube.com/watch?v=H_IkPia6eBA&'; 
echo str_replace("http://www.youtube.com/watch?v=","",$url); 
?>