Quiero obtener una identificación de video para YouTube o Vimeo a través de su código de inserción o URL, ¿Alguna solución para hacer esto con PHP?YouTube Vimeo ID de video de código incrustado o de URL con expresión regular de PHP RegEx
Respuesta
Puede usar preg_match para obtener los ID. Voy a cubrir las mismas expresiones más adelante en esta respuesta, pero aquí es la idea básica de cómo usar preg_match:
preg_match('expression(video_id)', "http://www.your.url.here", $matches);
$video_id = $matches[1];
He aquí un desglose de las expresiones para cada tipo de posible entrada que le preguntará sobre. Incluí un enlace para cada uno mostrando algunos casos de prueba y los resultados.
Para URL de YouTube como
http://www.youtube.com/watch?v=89OpN_277yY
, usted podría utilizar this expresión:v=(.{11})
códigos incrustar YouTube puede o bien tener este aspecto (un poco de materia extraña acortado):
<object width="640" height="390"> <param name="movie" value="http://www.youtube.com/v/89OpN_277yY?fs=... ... </object>
O como esto:
<iframe ... src="http://www.youtube.com/embed/89OpN_277yY" ... </iframe>
lo tanto una expresión para obtener el ID de cualquiera de los estilos sería this:
\/v\/(.{11})|\/embed\/(.{11})
URL Vimeo mirada como
http://vimeo.com/<integer>
, por lo que yo puedo decir. Lo más bajo que encontré fue simplementehttp://vimeo.com/2
, y no sé si hay un límite superior, pero supongo por ahora que está limitado a 10 dígitos. Espero que alguien me corrija si conocen los detalles. This expresión podría ser utilizado:vimeo\.com\/([0-9]{1,10})
Vimeo incrustar código toma esta forma:
<iframe src="http://player.vimeo.com/video/<integer>" width="400" ...
lo que podría utilizar this expresión:
player\.vimeo\.com\/video\/([0-9]{1,10})
Alternativamente, si la longitud de los números pueden eventualmente exceder 10, puede usar:
player\.vimeo\.com\/video/([0-9]*)"
Tenga en cuenta que necesitará el
"
a ponerse una\
si está incluyendo la expresión entre comillas dobles.
En resumen, no estoy seguro de cómo lo quería para implementar esto, pero bien podría combinar todas las expresiones con |
, ya que podría coincidir con cada uno por separado. Agregue un comentario a esta respuesta si desea que proporcione más detalles sobre cómo combinar las expresiones.
Hay otra respuesta similar [para youtube] aquí, podría ser útil echarle un vistazo. PHP Regex to get youtube video ID?
gracias por la información ... será útil ... –
De acuerdo con la última norma de youtube, puede usar el siguiente código para extraer la identificación de video del código de inserción.
$embed = '<iframe src="//www.youtube.com/embed/n6WYu-pSXH8" frameborder="0"></iframe>';
preg_match('~embed/(.*?)"~', $embed, $output);
echo $output[1];
Gracias
- 1. Regex: Stripping ID del video de Youtube desde la URL
- 2. Regex para extraer el ID de dominio y video de youtube/vimeo url
- 3. C# regex para obtener la identificación de video de youtube y vimeo por url
- 4. Force Vimeo HTML5 Video incrustado
- 5. Get Youtube Video ID de código HTML con PHP
- 6. patrón de expresión para obtener el ID de vídeo de YouTube desde cualquier URL de YouTube
- 7. Expresión regular para los enlaces de youtube
- 8. acaparando URL de video de youtube de curl o get_video_info
- 9. Obteniendo ID de video de YouTube en una URL e ingresando ID de video seleccionado en una URL
- 10. ¿Cómo obtengo la identificación de video de la URL? (Vimeo)
- 11. ¿Cómo obtengo una ID de video de youtube (PHP)
- 12. ¿Alguno preg_match para verificar si una url es un enlace de video de youtube/vimeo/dailymotion?
- 13. Video incrustado de Youtube - eliminar la pantalla de información final
- 14. ¿Cómo puedo rastrear un evento de clic de un video incrustado (youtube, vimeo, etc.)? (para rastrear el recuento de reproducciones)
- 15. ¿Cómo puedo modificar esta expresión regular para obtener el ID de video de Youtube desde una URL de Youtube que no especifica el parámetro v?
- 16. Python expresiones regulares convertir youtube url para youtube video
- 17. PHP expresión regular para reemplazar enlace url
- 18. Obtener el ID de video de YouTube desde la URL con jQuery
- 19. cambio de tamaño dinámico de vídeo Vimeo (o Youtube)
- 20. Reproducir un video de youtube incrustado en el bucle
- 21. Incrustar video de YouTube con nuevo código incrustado iframe en TinyMCE
- 22. Cómo rotar incrustado youtube video a modo de paisaje
- 23. Problema simple de expresión regular (Regex)
- 24. Patrones de expresión regular pregenerados o Bibliotecas Regex?
- 25. Cómo validar una expresión regular con PHP
- 26. Url enrutamiento regex PHP
- 27. Cómo detener un video de Vimeo con JQuery
- 28. Ver video privado de Vimeo con un token de OAuth
- 29. cómo obtener el ID de video de youtube desde la url
- 30. Youtube complete Java Regex
TNX por su respuesta .. –
no parecen llegar ninguna coincidencia cuando se utiliza estas expresiones regulares con preg_match. ¿Debo modificarlos de alguna manera o el sabor de la expresión regular es diferente? – cowboybebop
gracias por publicar esto, realmente me ayudó hombre – Julian