Last active
July 18, 2016 13:46
-
-
Save wwwbruno/8303657 to your computer and use it in GitHub Desktop.
Manipula url de vídeo do youtube e vimeo
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* verificar_video | |
* | |
* Verifica qual é o vídeo (youtube ou vimeo) e retorna um array com o link e o tipo | |
* | |
* | |
* @param $string | |
* @return array | |
*/ | |
function verificar_video($url){ | |
$return = array(); | |
if(is_youtube($url)){ | |
$return['tipo'] = 'youtube'; | |
$return['link'] = youtube_video_id($url); | |
} elseif(is_vimeo($url)){ | |
$return['tipo'] = 'vimeo'; | |
$return['link'] = vimeo_video_id($url); | |
} | |
return $return; | |
} | |
/** | |
* is_youtube | |
* | |
* Verifica se a url é do youtube | |
* | |
* | |
* @param $string | |
* @return boolean | |
*/ | |
function is_youtube($url){ | |
return (preg_match('/youtu\.be/i', $url) || preg_match('/youtube\.com\/watch/i', $url)); | |
} | |
/** | |
* youtube_video_id | |
* | |
* Pega a url do youtube e retorna o ID do video | |
* | |
* | |
* @param $string | |
* @return $string | |
*/ | |
function youtube_video_id($url){ | |
if(is_youtube($url)){ | |
$pattern = '/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/'; | |
preg_match($pattern, $url, $matches); | |
if (count($matches) && strlen($matches[7]) == 11){ | |
return $matches[7]; | |
} | |
} | |
return ''; | |
} | |
/** | |
* is_vimeo | |
* | |
* Verifica se a url é do vimeo | |
* | |
* | |
* @param $string | |
* @return boolean | |
*/ | |
function is_vimeo($url){ | |
return (preg_match('/vimeo\.com/i', $url)); | |
} | |
/** | |
* vimeo_video_id | |
* | |
* Pega a url do vimeo e retorna o ID do video | |
* | |
* | |
* @param $string | |
* @return $string | |
*/ | |
function vimeo_video_id($url){ | |
if(is_vimeo($url)){ | |
$pattern = '/\/\/(www\.)?vimeo.com\/(\d+)($|\/)/'; | |
preg_match($pattern, $url, $matches); | |
if (count($matches)){ | |
return $matches[2]; | |
} | |
} | |
return ''; | |
} | |
/** | |
* youtube_video_url | |
* | |
* Pega o ID do youtube e retorna a url video | |
* | |
* | |
* @param $string | |
* @return $string | |
*/ | |
function youtube_video_url($url){ | |
return "http://www.youtube.com/watch?v=".$url; | |
} | |
/** | |
* vimeo_video_url | |
* | |
* Pega o ID do vimeo e retorna a url video | |
* | |
* | |
* @param $string | |
* @return $string | |
*/ | |
function vimeo_video_url($url){ | |
return "http://vimeo.com/".$url; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment