1

だから私はこの簡単な方法を使ってURLがvimeoからのものかどうかを判断してきました

if (preg_match("/vimeo/",$url)) {
$getvim = (parse_url($url));
$vimid = str_replace("/", "", $getvim['path']);
}

ご覧のとおり、これはURLに「vimeo」が含まれているかどうかを判断し、スラッシュの後にすべてを取得してビデオIDを取得します。実際にvimeoビデオをリンクしている場合は正常に機能しますが、実際にはvimeoリンクではなく、リンクに「vimeo」が含まれているだけの場合は、すべてが完全に台無しになります。

誰かがこれを行うためのより良い方法を持っていますか?利用できるYouTubeソリューションはたくさんありますが、優れたvimeoソリューションを見つけることはほぼ不可能です。これに関するどんな助けもありがたいです、ありがとう。

4

2 に答える 2

3

このコードを試してください:

$urls = parse_url($url);
if ($urls['host'] == 'vimeo.com'){
    $vimid = ltrim($urls['path'], '/');
    if (is_numeric($vimid)) {
        // do something with $vimid
    }
}

すべてのビデオIDは数値であると想定しています。

于 2012-05-10T00:06:15.887 に答える
0

を介してページのソースを読み取り、file_get_contents($url)文字列が含まれているかどうかを確認します<meta property="og:video" content="http://vimeo.com/moogaloop.swf?clip_id=".$vimid." /> 。その文字列が含まれている場合は、有効なビデオであることがわかります。

于 2012-05-10T00:11:03.203 に答える