Avatar billede jannek_ek Nybegynder
10. februar 2007 - 16:37 Der er 4 kommentarer og
1 løsning

preg_replace og if/else

jeg har lavet en funktion der kan lave en url om til et link

$txt = preg_replace("/(http:\/\/|www\.)([^\s]*)/i", "<a href=\"".(("$1" == "www.") ? "http://" : "")."$1$2\" target=\"_blank\">$1$2</a>", $txt);

det virker fint nok, hvis man lige ser bort fra (("$1" == "www.") ? "http://" : ""), der ikke virker.

Jeg kan ikke gennemskue hvad der går galt
Avatar billede coderdk Praktikant
10. februar 2007 - 16:43 #1
Prøv med:

$txt = preg_replace("/(http:\/\/|www\.)([^\s]*)/ie", "'<a href=\"'.((\"\\1\" == \"www.\") ? \"http://\" : \"\").'\\1\\2\" target=\"_blank\">\\1\\2</a>'", $txt);

Du skal bruge /e modifieren og ændre replace teksten lidt...
Avatar billede coderdk Praktikant
10. februar 2007 - 16:43 #2
Et svar :)
Avatar billede jannek_ek Nybegynder
10. februar 2007 - 18:22 #3
mange tak det virker fint ... men hvad gør /e ?
Avatar billede coderdk Praktikant
10. februar 2007 - 18:31 #4
evaluerer replacement-strengen som php :)
Avatar billede jannek_ek Nybegynder
11. februar 2007 - 16:28 #5
ahh ok ... takker igen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester