Gå til innhold

Lage link av en URL i en tekst automatisk


Anbefalte innlegg

Noen som kan gi meg et eksempel og/eller hint om hvordan man automatisk kan få et script til å lage link av en URL i en eller annen tekst?

Altså:

$var = "Blabla http://www.url.com osv.. trallala";

til:

$var = "Blabla <a href="http://www.url.com">http://www.url.com</a> osv.. trallala";

 

 

Vet det er noe str_replace og eregi-saker inni bildet, men klarer ikke se hvordan det skal gjøres i praksis :hmm:

Endret av Loomy
Lenke til kommentar
Videoannonse
Annonse

Dersom du er interessert i ein ferdig funksjon, brukar eg denne:

function InsertLinks ( $Text )
{
//  First match things beginning with http:// (or other protocols)
  $NotAnchor = '(?<!"|href=|href\s=\s|href=\s|href\s=)';
  $Protocol = '(http|ftp|https):\/\/';
  $Domain = '[\w]+(.[\w]+)';
  $Subdir = '([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
  $Expr = '/' . $NotAnchor . $Protocol . $Domain . $Subdir . '/i';

  $Result = preg_replace( $Expr, "<a href=\"$0\" title=\"$0\" target=\"_blank\">$0</a>", $Text );

//  Now match things beginning with www.
  $NotAnchor = '(?<!"|href=|href\s=\s|href=\s|href\s=)';
  $NotHTTP = '(?<!:\/\/)';
  $Domain = 'www(.[\w]+)';
  $Subdir = '([\w\-\.,@?^=%&:\/~\+#]*[\w\-\@?^=%&\/~\+#])?';
  $Expr = '/' . $NotAnchor . $NotHTTP . $Domain . $Subdir . '/i';

  return preg_replace( $Expr, "<a href=\"http://$0\" title=\"http://$0\" target=\"_blank\">$0</a>", $Result );
} 

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...