Foros del Web » Programando para Internet » PHP »

Convertir textos en enlaces en PHP

Estas en el tema de Convertir textos en enlaces en PHP en el foro de PHP en Foros del Web. Hola, como podría hacer para Convertir textos en enlaces en PHP, es decir que teniendo un texto por ej: "algo http://dominio.com , texto texto texto ...
  #1 (permalink)  
Antiguo 13/09/2007, 20:55
Avatar de hgp147  
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 17 años, 3 meses
Puntos: 36
Convertir textos en enlaces en PHP

Hola, como podría hacer para Convertir textos en enlaces en PHP, es decir que teniendo un texto por ej: "algo http://dominio.com, texto texto texto texto... www.otrodominio.com", convierta en enlace a http://dominio.com y a www.otrodominio.com .
Seria como hace este foro cuando escribis un enlace. Lo estuve buscando en google y encontre esto http://www.webtaller.com/construccio...nlaces-php.php pero no entendi como usarlo. Y otra duda como haga para que cuando el enlace es muy largo lo resuma, es decir que ponga puntos suspensivos... como hace este foro.
Gracias
  #2 (permalink)  
Antiguo 13/09/2007, 23:52
Avatar de jfcutout  
Fecha de Ingreso: septiembre-2007
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: Convertir textos en enlaces en PHP

Buenas!!! Bueno esta es mi deduccion: espero te sirva para interpretarl mejor.

$texto (indica la variable texto, osea un texinput con nombre texto)

preg_replace (es la funcion que va a remplasar lo espesificado mas adelante)

( "/(http:\/\/[^(\)|[:space:])]*)\)/" , "<a href=\"\\1\" target=\"_blank\">\\1</a>)" ,

esto indica que cuando el php lea el texto y encuentre "http://" lo que sigue del texto hasta las proxima barra "\" debe asignar lo que sigue, que es el link. (va a tomar el link el mismo texto no)
target indica donde debe abrirse el link, en este caso en una ventana nueva.

para utilizarlo, solo debes cambiar la variable $texto por el nombre de la tuya y lo insertas en tu php.

Espero te sirva, en caso contrario. acepto tus puteadas. jeje. Saludos.

$texto = preg_replace ( "/(http:\/\/[^(\)|[:space:])]*)\)/" ,
"<a href=\"\\1\" target=\"_blank\">\\1</a>)" ,
$texto );
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 11:27.