Sådan får du æ, ø og å med, når du læser RSS-feeds med MagPie

Hvis du arbejder, har arbejdet eller blot eksperimenterer med at hive RSS ind på forskellige sider, kender du muligvis MagPie, der er en RSS-parser skrevet i PHP. MagPie har en række gode features, som jeg nok skal undlade at nævne her, det kan du læse mere om på MagPies side.

Men. Hvis du hiver danske feeds ind, så vil du opleve, at specialtegn (altså tegn som æ, ø, å) blver kodet forkert og ligner noget, der er løgn. Dette skyldes, at MagPie ikke automatisk kigger på, hvilket format RSS-feedet bruger.

Derfor: Hvis du oplever, at dine danske tegn ser underlige ud, når du hiver et RSS-feed ind via MagPie, er det første, du skal gøre, at tjekke hvilket tegnsæt, feedet er i. Lad os tage mit Lars K Jensen-samlefeed fra feed.informer (for nu at være narcissistisk :-)):

http://app.feed.informer.com/digest3/JJMHLP3ND8.rss

Kig nu i kildekoden for feedet, hvis du er på Firefox, kan du gøre dette ved at trykke CTRL+U — CMD+U, hvis du er på Mac. Kig i den øverste linje:

<?xml version="1.0" encoding="utf-8"?>

Bingo. Her er altså tale om et feed kodet i UTF-8-tegnsættet. Det skal vi nu fortælle MagPie. Gå ind i den .php-fil, hvor du kalder MagPie.

Lige inden du kalder MagPie (formentlig med require_once) skal du skrive:

define('MAGPIE_INPUT_ENCODING', 'UTF-8');
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8'

Så skulle dine mærkelige tegn gerne blive til læselige bogstaver. Er der tale om et andet tegnsæt end UTF-8, skal du selvfølgelig skrive det ud for MAGPIE_INPUT_ENCODING.

PS: Jeg fandt løsningen her på Simplestation.com efter at have Googlet mig frem til det.

Forfatter: Lars K Jensen

Lars er uddannet journalist og arbejder nu med udviklingsprocesser og redaktionel udvikling. Han skriver blandt andet på Medieblogger. Følg ham på Twitter: @larskjensen.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *