2016-03-10 76 views
0

到目前爲止,我一直在試圖做的是輸出一個視頻響應,我知道它不會工作,如果我沒有標籤後的標籤,但在標籤之前它不會工作,如果str_replace不起作用。你能幫我解決這個youtube rss feed嗎?

<?php 
$html = ""; 
$url = "https://www.youtube.com/feeds/videos.xml?user=Fliberjig1"; 
$xml = simplexml_load_file($url); 
for($i = 0; $i < 6; $i++) { 
$id = $xml->entry[$i]->id; 
$id = str_replace("YT:VIDEO:","", $id); 
$title = $xml->entry[$i]->title; 
$html .= "<li><h3>$title</h3> 
<p>$id</p> 
<iframe width='854' height='480' src='https://www.youtube.com/embed/$id' frameborder='0' allowfullscreen></iframe></li>"; 
} 
echo $html; 
?> 

結果會是這樣

YT:VIDEO:WOCIEMNSI4C

,但我希望它是這樣

WOCIEMNSI4C

您能否以任何方式幫助我解決問題

+0

看起來'yt:video:'是小寫字母,所以你可以使用[str_ireplace](http://php.net/manual/bg/function.str-ireplace.php)而不是'str_replace'。 – mrun

回答

1

如果我理解正確,您只是想解析字符串。這是可以做到用:

$pieces = explode(":", $id); $clean_id = $pieces[2];

+0

我發現了一種方法來做到這一點,我使用了一個substr,只是得到了它的id導出它用於視頻。 – TheLiveitup34

0
$id = "YT:VIDEO:WOCIEMNSI4C"; 
$rest = substr("$id", -11); //result WOCIEMNSI4C 
1

看來,飼料中含有yt:video:WOCIemNSI4c而不是YT:VIDEO:WOCIEMNSI4C所以你真正需要的是您目前使用的str_ireplace 函數而不是str_replace

所以,如果你改變你的代碼,第7行到這一點:

$id = str_ireplace("YT:VIDEO:","", $id); 

你應該確定。