Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/05/2012, 08:02
lokixxx
 
Fecha de Ingreso: febrero-2009
Mensajes: 20
Antigüedad: 15 años, 2 meses
Puntos: 2
hyperlinks con bbcodes y preg_replace eregi_replace

Hola les comento lo que quiero lograr.

tengo el siguiente bbcode para las urls

Código PHP:
$text eregi_replace("\\[url=([^\\[]*)\\]([^\\[]*)\\[/url\\]""<a rel=\"nofollow\" target=\"_blank\" href=\"\\1\">\\2</a>"$text); 
$text eregi_replace("\\[url\\]([^\\[]*)\\[/url\\]","<a rel=\"nofollow\" target=\"_blank\" href=\"\\1\">\\1</a>",$text); 
todo funciona de maravilla. pero quiero que las urls que no van con bbcode se conviertan en hyperlinks automaticamente. para eso probe con esta funcion

Código PHP:
    function makeClickableLinks($text) {
    
$text eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
    
'<a href="\\1">\\1</a>'$text);
    
$text eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)',
    
'\\1<a href="http://\\2">\\2</a>'$text);
    
$text eregi_replace('([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})',
    
'<a href="mailto:\\1">\\1</a>'$text);
    return 
$text;
    } 
funciona ya que a las urls sin bbcode las convierte en hyperlinks. el problema es que a las que ya tienen los bbcode las modifica.

como se puede hacer para que los dos codigos funcionen a la ves ? me explico?