10. februar 2003 - 09:10Der er
12 kommentarer og 1 løsning
problemer med eregi_replace
Jeg har lavet lidt kode der gerne skulle erstate alle [pris=XX] med XX * en konstant. Men der er et problem med at få overført variablen til funktionen pris. Jeg tror nok i kan regne ud hvad der er meningen med scriptet med det virker bare ikke.
function pris($pris) { $nypris = $pris * 5.84; return "$nypris"; } $tekst = 'gfsdg [pris=25] hgjkad gjkfadlhgjkafdhgadhjafkg l hkad jgkl ag ahjdhal '; $tekst = eregi_replace("\[pris=([0-9]+)\]", pris('\\1'), $tekst); echo $tekst;
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det er fordi at jeg har en side med priser der er afhængig af doller kursen. Så var det at planen at hvergang der var en pris så skrive [pris=xx] hvor xx er prisen i doller. Og så erstatte alle priserne i dollers til priser i kroner.
Teksten ligger i en database og bliver hentet ud som $tekst
Det skal bruges på en hjemmeside hvor alle siderne ligger i en database. Der skal så kunne skrives en eller flere priser ind forskellige steder i teksterne som så rettes ved udskrivning.
takker mange gange. Det var den perfekte løsning på problemet. Koden ser nu sådan her ud: ///----------- $kurs = 7.5; $tekst = 'Prisen på varen er [pris=84,5]. Hvis du vil købe to koster de [pris=150].'; while(ereg("\[pris=[1-9][0-9]+(\,[0-9]{1,2})?\]",$tekst,$regEx)) { $erstat = substr($regEx[0],6,-1); $value = ereg_replace(",", ".",$erstat); $replace_string = number_format($kurs * $value, 0, ',', '.') . " kr."; $tekst = ereg_replace("\[pris=" . $erstat . "\](.)?",$replace_string,$tekst); } echo $tekst;
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.