Ik heb een probleem met mijn rss-feed. Het probleem zit `m erin dat niet alle entity namen worden herkend door de xml-parser. Kijk maar eens naar http://www.mofert.nl/rss2.php

Is er een functie voor het omzetten van speciale tekens in entity nummers of moet ik zelf een functie maken?.
Het speciale teken blijft ongewijzigd in de string staan.
Okee, dan gaan we morgen verder ;-)
Goed ID
>Jan: Heb je nog naar mijn script gekeken?
goeiemorgen mensen,

ik heb ook even gekeken. ik dacht net even het te gevonden hebben, maar bij nader inzicht bleek het toch van niet :( spijtig
IK HEB HET!!! :

<?php
function xml_entities ($teks)
{
$teikes = get_html_translation_table (HTML_ENTITIES, ENT_QUOTES);
$teikes = array_flip ($teikes);
$teikes = array_reverse ($teikes);

foreach ($teikes as $key => $value)
{
$teks = str_replace ($value, '&#' . ord ($value) . ';', $teks);
}

$teks = str_replace("€", "&#8364;", $teks);

return $teks;
}
?>

De problemen waren:
1. Om één of andere reden moet de variabele, waar de "bron" in staat, dezelfde naam hebben, als de variabele, waar uiteindelijk het resultaat in komt te staan (in dit geval $teks).
2. Ik moest de array, waar de speciale tekens in staan reversen. De ampersand stond namelijk helemaal achteraan in de array. Daardoor werden de ampersands, die steeds het begin van een entity aangeven, ook weer omgezet naar een entity. Nu staat de ampersand als eerste in de array (toeval?), dus deze worden nu omgezet vóór de rest van het zooitje gecodeerd wordt. Je moet er maar even aan denken.

Ik zal het ook maar even op php.net erbij zetten.
Geweldig en TOPPIES dat je ook de terugkoppeling geeft!!
Suc6 met alles!!
Groet, lissy

Reageren