2010-12-28 1 views

答えて

5
/((http:\/\/)?(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/v\/)([\w-]{11}).*|http:\/\/(?:youtu\.be\/|(?:[a-z]{2,3}\.)?youtube\.com\/watch(?:\?|#\!)v=)([\w-]{11}).*)/i 
+0

動画IDをつかむためのより良い方法です –

2

これが私の最初の貢献で、それが役に立てば幸い。

$url = "https://www.youtube-nocookie.com/embed/lCpaCAfhCH4"; 

if (preg_match("/^((https?:\/\/)?(w{0,3}\.)?youtu(\.be|(be|be-nocookie)\.\w{2,3}\/))((watch\?v=|v|embed)?[\/]?(?P<video>[a-zA-Z0-9-_]{11}))/si", $url, $matches)) { 

echo $matches['video']; 

} 

この正規表現は、任意のユーチューブのURL形式(ロング、ショート、埋め込み、安全な、など)

おかげで動作します!

0

完了使用正規表現。これは、このしかし、誰行くを試してみました

<?php 
$url = "http://www.youtube.com/watch?v=KkMDCCdjyW8&feature=relate"; 
parse_str(parse_url($url, PHP_URL_QUERY), $my_array_of_vars); 
echo $my_array_of_vars['v'];  
    // Output: KkMDCCdjyW8 
?> 

working here