04. april 2004 - 13:43Der er
3 kommentarer og 1 løsning
PHP5, simpleXML og danske karakterer
Jeg har prøvet at lave en RSS-parser med simpleXML under PHP5, men det giver besynderlige resultater, når XML-filen indeholder danske karakterer. se f.eks. oesten.homeip.net/xslt/RSSing.php. Er der kun ASCII som i oesten.homeip,net/xslt/RSSbbc.php er der ingen problemer. Er der nogen der har prøvet sådan noget?
uden at kunne give dig det helt korrekte svar - jeg har ikke php5 og simpleXML - så kan jeg sige, at dit problem har noget med encoding at gøre. de xml-filer du læser er sandsynligvis enkodet i et unicode-format. hvis parseren ikke ved dette, kan den læse forkert. prøv at tvinge parseren til, at læse indholdet som UTF-8 (jeg ved ikke hvordan du lige gør det, men kig i dokumentationen)
Desværre er der lige netop ingen dokumentation endnu. Men du har nok ret i det med encoding. Jeg forestiller mig at prøve at lave XML-filen om til en streng og så køre htmlentities() på den før jeg lader simpleXML tage over.
swaxi: Du var på rette spor. Der er tale om UTF-8 (BOM), så vidt jeg kunne finde ud af (æ = C3A6 ....). Så hvis man laver en lille funktion med strtr() der oversætter de 6 karakterer er problemet løst. Så send mig lige et svar.
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.