Me gustaría saber si hay alguna función en PHP que lo que haga sea coger de entre dos palabras, la palabra de enmedio, un ejemplo:
Si le doy una web entera y en una parte tiene el codigo
</a> <a href="http://www27.megavideo.com/files/60ba5dcce06b5a8eff72ab80db05069b/You%20raise%20me%20up.wmv" target="_blank" style="f...
Bueno pues dandole el primer valor:
Citar</a> <a href="
Y el segundo:
Citar" target="_blank" style="f...
Pues que me pase a una variable lo del medio.
Yo lo haría con un remplace, pero al haber más cosas me quedé blanca.
Manejo de strings en PHP (ver página oficial)
http://es2.php.net/substr
http://es2.php.net/manual/es/function.strrchr.php
http://es2.php.net/manual/es/function.strstr.php
solo quieres recojer el vinculo?
facil, no nesesitas substr
con un explode
Bueno, muchas gracias a los dos :-*
Lo he estado mirando y creo que el mejor sería el substr ya que el "explode" no funcionaría con el código fuente de una web entera ¿No?
Usar el explode es ir a lo fácil y puede que depende de que situación no te funcione. Mejor currate una función que lo haga todo usando las funciones que te puse.
Saludos.
Tambien podrias usar
http://es2.php.net/manual/es/function.preg-match.php
para buscar todas las que coincidan con un patron, o sea, todos los links :D
<?php
function desde_hasta($desde, $hasta, $contenido){
if(eregi($desde ,$contenido)){
$retorno = explode($desde, $contenido);
$retorno = $retorno[1];
$retorno = explode($hasta, $retorno);
$retorno = $retorno[0];
return $retorno;
} else {
return FALSE;
}
}
?>
Debes ser lo mas especifico posible ya que solo debuelve la primera coincidencia, o sea.,.. si la misma coincidencia se repite mas de una ves debolverá solo la primera a menos que lo modifiques de retorno[1] a retorno[2], es mas... hasta puedes agregarlo como una variable extra :P
function desde_hasta($desde, $hasta, $contenido,$cantidad){...
Donde cantidad = $cantidad+1;