Avatar billede webcreator Nybegynder
28. marts 2006 - 15:37 Der er 2 kommentarer og
1 løsning

eregi_replace erstatter min tekst 2 gange

Hej Eksperter.

Jeg er stødt ind i et højest besynderligt problem. Nedenstående kode eksekveres to gange (ser det ud til).

$this->data = eregi_replace($toReplace, $newContent, $this->data);

Jeg har udskrevet både $toReplace, $newContent og $this->data for at sikre mig, at de indeholder de korrekte værdier - og det gør de. Men $toReplace bliver alligevel erstattet med indholdet fra $newContent 2 gange. $newContent kommer altså til at stå dobbelt.

$toReplace = "Test";
$newContent = "HEJ";
$this->data = "Dette er en test";

Indholdet i $this->data efter jeg har kørt scriptet :
"Dette er en HEJHEJ"

Der er ikke tale om en løkkekonstruktion. Nogen der har et bud?
Avatar billede webcreator Nybegynder
28. marts 2006 - 16:16 #1
Jeg tror der er tale om en bug i funktionen. Det der faktisk skal erstattes, er flg. linie i en template fil :

<!-- START menu --> <a href="{menuhref}">{menulink}</a> |<!-- END menu -->

Og det kan åbenbart ikke lade sig gøre.

Jeg har googlet lidt, men synes ikke at kunne finde en funktion der kan slette fra position x til position y i en streng. Kan det passe?
Avatar billede webcreator Nybegynder
28. marts 2006 - 16:17 #2
Det var noget vrøvl jeg skrev - det kan godt lade sig gøre. Resultatet er bare at $newContent bliver indsat i strengen to gange.
Avatar billede webcreator Nybegynder
28. marts 2006 - 16:44 #3
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