项目用到临时写的。待完善:
/*
* 根据用户提交的(swf/html)地址,获取优酷,土豆的swf播放地址
* */
private function _getSwf ($url = '') {
if(isset($url) && !empty($url)){
preg_match_all('/http:\/\/(.*?)?\.(.*?)?\.com\/(.*)/',$url,$types);
}else{
return false;
}
$type = $types[2][0];
$domain = $types[1][0];
$isswf = strpos($types[3][0], 'v.swf') === false ? false : true;
$method = substr($types[3][0],0,1);
switch ($type){
case 'youku' :
if( $domain == 'player' ) {
$swf = $url;
}else if( $domain == 'v' ) {
preg_match_all('/http:\/\/v\.youku\.com\/v_show\/id_(.*)?\.html/',$url,$url_array);
$swf = 'http://player.youku.com/player.php/sid/'.str_replace('/','',$url_array[1][0]).'/v.swf';
}else{
$swf = $url;
}
break;
case 'tudou' :
if($isswf){
$swf = $url;
}else{
$method = $method == 'p' ? 'v' : $method ;
preg_match_all('/http:\/\/www.tudou\.com\/(.*)?\/(.*)?/',$url,$url_array);
$str_arr = explode('/',$url_array[1][0]);
$count = count($str_arr);
if($count == 1) {
$id = explode('.',$url_array[2][0])[0];
}else if($count == 2){
$id = $str_arr[1];
}else if($count == 3){
$id = $str_arr[2];
}
$swf = 'http://www.tudou.com/'.$method.'/'.$id.'/v.swf';
}
break;
default :
$swf = $url;
break;
}
return $swf;
}