3

ユーザーが動画を追加できるようにしたかったのですが、サイトの 1 つで問題が発生しています。

Youtube、Vimeo、Vevo、Daily Motion、MTV からの動画を許可します。

問題はMTVです。URL は常に異なるため、IFrame/埋め込みコードのソース値を取得する方法があるかどうか疑問に思っていました。

例: MTV 埋め込みコードは次のとおりです。

<div style="background-color:#000000;width:520px;">
<div style="padding:4px;">
<iframe src="http://media.mtvnservices.com/embed/mgid:uma:videolist:mtv.com:1687162/cp~instance%3Dfullepisode%26autoPlay%3Dfalse%26series%3D2211%26seriesId%3D29240%26channelId%3D1%26id%3D1687162%26instance%3Dfullepisode%26uri%3Dmgid%3Auma%3Avideolist%3Amtv.com%3A1687162" width="512" height="288" frameborder="0"></iframe>
<p style="text-align:left;background-color:#FFFFFF;padding:4px;margin-top:4px;margin-bottom:0px;font-family:Arial, Helvetica, sans-serif;font-size:12px;">Get More: 
    <a href="http://www.mtv.com/shows/teen_mom/season_4/series.jhtml" style="color:#439CD8;" target="_blank">Teen Mom (Season 4)</a>, <a href="http://www.mtv.com/videos/home.jhtml" style="color:#439CD8;" target="_blank">Full Episodes</a></p></div></div>

その完全な文字列から IFrame ソース値を取得する方法はありますか?

ただ欲しい :

http://media.mtvnservices.com/embed/mgid:uma:videolist:mtv.com:1687162/cp~instance%3Dfullepisode%26autoPlay%3Dfalse%26series%3D2211%26seriesId%3D29240%26channelId%3D1%26id%3D1687162%26instance%3Dfullepisode%26uri%3Dmgid%3Auma%3Avideolist%3Amtv.com%3A1687162

どんな助けでも大歓迎です。埋め込みコードではなく物理 URL 自体を使用できたため、他のビデオ ソースはシンプルでした。

4

2 に答える 2

2

これは有効な HTML であるため、 SimpleXMLで簡単に解析できます。

$root = simplexml_load_string($embed_code);
$url = (string) $root->div->iframe['src'];
于 2012-06-17T22:45:27.207 に答える
1

これを行うのは非常に簡単です。必要なのはこの1行のコードだけです。

document.getElementById("myFrame").src
于 2012-06-17T22:47:52.673 に答える