Foros del Web » Programando para Internet » PHP »

extraer una variable de un link sin metodo get

Estas en el tema de extraer una variable de un link sin metodo get en el foro de PHP en Foros del Web. Necesito extraer el valor de v= que viene en esta cadena... http://www.youtube.com/watch?v=YuWqs7yNc8U&feature=autoplay&list=UUXiFF7C sUn5IMRXLDIZaynw&lf=plcp&playnext=1...
  #1 (permalink)  
Antiguo 05/03/2012, 12:20
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 17 años, 3 meses
Puntos: 2
extraer una variable de un link sin metodo get

Necesito extraer el valor de v=

que viene en esta cadena...
http://www.youtube.com/watch?v=YuWqs7yNc8U&feature=autoplay&list=UUXiFF7C sUn5IMRXLDIZaynw&lf=plcp&playnext=1
  #2 (permalink)  
Antiguo 05/03/2012, 12:37
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 14 años, 5 meses
Puntos: 74
Respuesta: extraer una variable de un link sin metodo get

Debes de usar expresiones regulares para ello.
Un ejemplo:

Código PHP:
Ver original
  1. $str = 'http://www.youtube.com/watch?v=YuWqs7yNc8U&feature=autoplay&list=UUXiFF7C sUn5IMRXLDIZaynw&lf=plcp&playnext=1'
  2. $patron = "#(?<=v=).+#";
  3. if(preg_match($patron,$str,$matches))
  4. {
  5.     $resultado = $matches[0];
  6.     echo($resultado);
  7. } else {
  8.     echo 'No encontrado';
  9. }

Saludos,

Última edición por OsSk4R; 05/03/2012 a las 12:38 Razón: Se me olvido $str xD
  #3 (permalink)  
Antiguo 05/03/2012, 12:39
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 12 años, 11 meses
Puntos: 528
Respuesta: extraer una variable de un link sin metodo get

strpos() te dice la posición donde aparece la cadena que el indiques, podrías ocuparla para que te diga dónde empezar a cortar, luego nuevamente con el & para que te indique hasta dónde cortar.
  #4 (permalink)  
Antiguo 05/03/2012, 12:56
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 17 años, 3 meses
Puntos: 2
Respuesta: extraer una variable de un link sin metodo get

con eso me extrae....
v-ALAewpYdg&list=UUXiFF7CsUn5IMRXLDIZaynw&index=1&fe ature=plcp

como hacer para ke solo extraiga...
v-ALAewpYdg
  #5 (permalink)  
Antiguo 05/03/2012, 13:40
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 14 años, 5 meses
Puntos: 74
Respuesta: extraer una variable de un link sin metodo get

Pues lo que se me ocurre por ahora es hacer lo siguiente:

Código PHP:
Ver original
  1. $str = 'http://www.youtube.com/watch?v=YuWqs7yNc8U&feature=autoplay&list=UUXiFF7C sUn5IMRXLDIZaynw&lf=plcp&playnext=1';
  2. $patron = "#(?<=v=).+#";
  3. if(preg_match($patron,$str,$matches))
  4. {
  5.     $resultado = $matches[0];
  6.     $claves = preg_split("/[&]+/", $resultado);
  7.     print($claves[0]);
  8. } else {
  9.     echo 'No encontrado';
  10. }
Quizás no sea lo más elegante pero bueno, lo importante es que te da una idea y al menos hace lo que quieres. En realidad te extrae toda la cadena, o sea, toda la url pero te muestra solo YuWqs7yNc8U, ahora si cambias print($claves[0]); por print($claves[1]); te mostraría la segunda parte que es feature=autoplay y así sucesivamente.

En fin, al menos espero que te sirva o te guíe un poco

Saludos,

Última edición por OsSk4R; 05/03/2012 a las 13:41 Razón: Errata: menos*

Etiquetas: link, metodo, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:39.