2011-06-28 8 views

答えて

7

あなたはID(最初_までのすべての文字)を取得するためにURLの最後の部分を取得するためにbasename[docs]を使用し、strtok[docs]ことができます。

私はこの使用
$id = strtok(basename($url), '_'); 
0
<?php 
$output = parse_url("http://www.dailymotion.com/video/x4xvnz_the-funny-crash-compilation_fun"); 

// The part you want 
$url= $output['path']; 
$parts = explode('/',$url); 
$parts = explode('_',$parts[2]); 

echo $parts[0]; 

http://php.net/manual/en/function.parse-url.php

4
/video\/([^_]+)/ 

トリックを行う必要があります。このグラブは、最初の_までvideo/の後のすべてのテキストをキャプチャします。

2
preg_match('#<object[^>]+>.+?http://www.dailymotion.com/swf/video/([A-Za-z0-9]+).+?</object>#s', $dailymotionurl, $matches); 

     // Dailymotion url 
     if(!isset($matches[1])) { 
      preg_match('#http://www.dailymotion.com/video/([A-Za-z0-9]+)#s', $dailymotionurl, $matches); 
     } 

     // Dailymotion iframe 
     if(!isset($matches[1])) { 
      preg_match('#http://www.dailymotion.com/embed/video/([A-Za-z0-9]+)#s', $dailymotionurl, $matches); 
     } 
$id = $matches[1]; 
1

function getDailyMotionId($url) 
{ 

    if (preg_match('!^.+dailymotion\.com/(video|hub)/([^_]+)[^#]*(#video=([^_&]+))?|(dai\.ly/([^_]+))!', $url, $m)) { 
     if (isset($m[6])) { 
      return $m[6]; 
     } 
     if (isset($m[4])) { 
      return $m[4]; 
     } 
     return $m[2]; 
    } 
    return false; 
} 

これは、さまざまなURLを処理することができます:

$dailymotion = [ 
    'http://www.dailymotion.com/video/x2jvvep_coup-incroyable-pendant-un-match-de-ping-pong_tv', 
    'http://www.dailymotion.com/video/x2jvvep_rates-of-exchange-like-a-renegade_music', 
    'http://www.dailymotion.com/video/x2jvvep', 
    'http://www.dailymotion.com/hub/x2jvvep_Galatasaray', 
    'http://www.dailymotion.com/hub/x2jvvep_Galatasaray#video=x2jvvep', 
    'http://www.dailymotion.com/video/x2jvvep_hakan-yukur-klip_sport', 
    'http://dai.ly/x2jvvep', 
]; 

github(https://github.com/lingtalfi/video-ids-and-thumbnails/blob/master/testvideo.php)をチェックして、youtube、vimeo、およびdailymotionからID(およびサムネイル)を取得する機能を提供します。

関連する問題