Tha_Zaynt Skrevet 26. mai 2005 Del Skrevet 26. mai 2005 Jeg tenkte å bruke str_replace til å replace tilfeller av å med &aering; ø med ø osv. men er ikke sikker på hvordan jeg får dette til i et array så jeg slipper å skrive det slik $filnavn = str_replace('å', 'å', $filnavn); $filnavn = str_replace('ø', 'ø', $filnavn); $filnavn = str_replace('', '_', $filnavn); osv. Noen som vet hvordan dette kan gjøres? Lenke til kommentar
dabear Skrevet 26. mai 2005 Del Skrevet 26. mai 2005 (endret) <?php $from = array('å', 'ø'); $to = array('å', 'ø'); $string = 'På jordet sitter nissen med sin julegrøt'; $newString = str_replace($fro, $to, $string); ?> Endret 26. mai 2005 av dabear Lenke til kommentar
PT Skrevet 26. mai 2005 Del Skrevet 26. mai 2005 (endret) <?php $finn = array( "å", "Å", "ø", "Ø", "æ", "Æ", ); $erstatt = array( "å", "Å", "ø", "Ø", "æ", "Æ", ); $filnavn = str_replace($find, $replace, $filnavn); ?> Sånn ca? Er forresten usikker på æ, men jeg tror det er slik æ skal skrives. PHP.net: str_replace er en fin båt En fin ting å huske på er å skrive http://php.net/funksjonsnavnet EDIT: Dæng, hele fem minutter for sen Endret 26. mai 2005 av PT Lenke til kommentar
Tha_Zaynt Skrevet 26. mai 2005 Forfatter Del Skrevet 26. mai 2005 hmm...ser bra ut, men jeg får ikke den siste til å fungere...den som skal erstatte mellomrom med _ $finn = array( "å", "Å", "ø", "Ø", "æ", "Æ", "", ); $erstatt = array( "å", "Å", "ø", "Ø", "æ", "Æ", "_", ); Lenke til kommentar
PT Skrevet 26. mai 2005 Del Skrevet 26. mai 2005 $finn = array( "å", "Å", "ø", "Ø", "æ", "Æ", " ", // Her la jeg til et mellomrom ); $erstatt = array( "å", "Å", "ø", "Ø", "æ", "Æ", "_", ); Sånn må det vel bli. Kan ikke erstatte ingenting med underscore Lenke til kommentar
Tha_Zaynt Skrevet 26. mai 2005 Forfatter Del Skrevet 26. mai 2005 ahh...selfølgelig Takk skal du ha! Lenke til kommentar
Rasmus Skrevet 27. mai 2005 Del Skrevet 27. mai 2005 For å konvertere norske bokstaver til gjeldende HTML-entity, kan man bruke PCRE (Perl Compatible Regular Expressions) kombinert med funksjonen htmlentities. Mønsteret '[æ|ø|å]'si består av én gruppe. Denne skal matche æ, ø eller å. På slutten har jeg lagt til si slik at teksten blir behandlet som en linje og uavhengig av case. Har laget en egen callbackfunksjon som returnerer den matchende bokstavens HTML-entity. Dermed trenger man ikke kjennskap til de forskjellige entities, og mønsteret kan enkelt utvides til flere bokstaver. <?php echo nor_entities("Ærling, Østen og Åse. ærling, østen og åse."); //Konverterer Æ,Ø,Å (uavhengig av case) til htmlentity vha PCRE og htmlentities function nor_entities($tekst){ return preg_replace_callback("'[æ|ø|å]'si",htmlentities_cb,$tekst); } function htmlentities_cb($array){return htmlentities($array[0]);} ?> Eksempelet gir følgende output Ærling, Østen og Åse. ærling, østen og åse. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå