1

ブラウザからURLをコピーして貼り付けるだけで、さまざまなビデオWebサイトからビデオの詳細を取得するプラグインを作成しようとしています.

しかし、メタカフェの動画に問題があります。このビデオ URL の例から詳細を取得するには

http://www.metacafe.com/watch/cb-V9EJSvnKvTcH/confronting_fear_in_virtual_reality/

メタカフェhttp://www.metacafe.com/api/item/cb-V9EJSvnKvTcH/に移動し、このビデオ ID から xml を解析する必要があります。

簡単だと思いましたが、問題はメタカフェがxmlデータにビデオIDのみを使用し、URLにIDの後にビデオ名も含まれていることです。

私が使用するビデオのみを埋め込むには

$video_grab_url = 'http://www.metacafe.com/watch/cb-V9EJSvnKvTcH/confronting_fear_in_virtual_reality/';
$embed_vid_url = parse_url( $video_grab_url );
$metacafe = mb_substr( $embed_vid_url['path'], 7, -1 );

これで、埋め込み用の名前でビデオIDを取得します。しかし、他の詳細について述べたように、URL から xml データを解析し、xml データの URL を取得するには、名前のないビデオ ID のみが必要です。

私はphpプロではないので、preg_matchの使用に少し迷いましたこの「cb-V9EJSvnKvTcH」のみを取得するためにpreg_matchを使用するにはどうすればよいので、xmlデータを取得して、期間、親指、タグなどの情報を解析できます...

4

2 に答える 2

1

これを試してみてください。多分これはあなたを助けることができます。

(?<=watch/).*?(?=/)

サンプル PHP コード、

<?php
$subject = "theLINKhere";
$pattern = "#(?<=watch/).*?(?=/)#"; // edit: Added modifiers
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
print_r($matches);
?>
于 2012-09-30T15:22:40.370 に答える
0

または、次のようなものも使用できます。

$url = 'http://www.metacafe.com/watch/cb-V9EJSvnKvTcH/confronting_fear_in_virtual_reality/';
$path = parse_url($url, PHP_URL_PATH);
$pieces = explode('/', $path);

$video_id = $pieces[2];
于 2012-09-30T15:32:49.717 に答える