Avatar billede kviller Novice
08. marts 2008 - 23:33 Der er 10 kommentarer og
1 løsning

str_replace() med danske bogstaver

Jeg har et lille problem med at lave en replace.

Jeg har et meget langt indset i en database hvor der alle steder er brugt æ ø  og å. Nu efter vi har skiftet udbyder kan webserveren ikke vise disse bogstaver når det er i koden og vi skal derfor have erstattet alle i hele teksten.

Hvis jeg bruger str_replace("æ", "æ", $temp); finder den simpelthen ikke nogen æ'er i strengen, selvom det er der. Kan sagtens gøre det med alle andre bogstaver, men den kan åbenbart ikke med æ ø og å.

Kan man gøre det med noget ascii kode var min idé, men ved bare ikke hvordan?
Avatar billede kviller Novice
08. marts 2008 - 23:35 #1
Har samme problem med linie skift, så hvis der findes en måde at slette linieskift i en streng vil jeg meget gerne have den med også.
Avatar billede erikjacobsen Ekspert
08. marts 2008 - 23:37 #2
Det ville nok være nemmere at sætte det forventede tegnsæt i stedet for at ændre dine data. Et gæt kunne være, at dine data er i iso-8859-1, mens serveren er sat til at vise utf-8.
Avatar billede kviller Novice
08. marts 2008 - 23:55 #3
Jeg har desværre ikke mulighed for at ændre på serveren, da det er hostet hos web10
Avatar billede erikjacobsen Ekspert
09. marts 2008 - 00:19 #4
Du kan for hver php-fil sætte
  header("Content-Type: text/html; charset=ISO-8859-1");
ind i toppen, og dermed ændre tegnsættet (hvis det er problemet)
Avatar billede kviller Novice
09. marts 2008 - 00:40 #5
Der er i head delen <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
Avatar billede erikjacobsen Ekspert
09. marts 2008 - 00:41 #6
Jo, men det hjælper ikke. Men selvfølgelig ved vi ikke hvad problemet er - det er rent gætværk.
Avatar billede kviller Novice
09. marts 2008 - 00:43 #7
Har lavet en midlertidig post på http://www.nedjakob.dk/malawi/rip.php så det kan ses hvad der sker.
Avatar billede erikjacobsen Ekspert
09. marts 2008 - 00:48 #8
Ok, det er så omvendt ;)  Du viser tegn fra utf-8 som iso-8859-1. Serveren selv leverer ikke oplysninger om tegnsæt. Derfor vil dit meta-tag principielt virke, selv om det er lettere (og en mikroskopisk smule hurtigere) for browseren at få oplysningen i HTTP-headeren.
Avatar billede kviller Novice
09. marts 2008 - 00:51 #9
Wohoo det virker når jeg laver det til utf-8 :)

Takker. Skriver du ikke lige et svar?
Avatar billede erikjacobsen Ekspert
09. marts 2008 - 00:52 #10
Jeg samler slet ikke på point, tak. Og det er vist kun os to, der har været i gang, så du kan roligt selv lægge et svar, og acceptere det.
Avatar billede kviller Novice
09. marts 2008 - 00:53 #11
Mange tak. Ikke fordi jeg heller samler, men er meget glad for din hjælp.
Takker og bukkker.
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

IT-JOB

AL Sydbank A/S (tidligere Arbejdernes Landsbank)

Tech Lead til Datacenter Operations

Styrelsen for Grøn Arealomlægning og Vandmiljø

Teamleder til Application Management