Hallo,
ik probeer een xml file te parsen die er zo uitziet:
Omdat de entity Ø niet bestaat in XML is die in de DTD (of eigenljk in een .mod die de DTD inlaad) gedefinieerd.
PHP herkent dat ook, want voordat de DTD verwijzing goed stond kreeg ik een melding over een niet herkenbare entity, en die is nu weg, maar PHP laat het karakter niet zien.
Ik krijg dus bv. NIELS BIE ipv NIELS BIØIE
Dit is de php code:
Iemand een idee wat ik verkeerd doe?
ik probeer een xml file te parsen die er zo uitziet:
XML:
1
2
3
4
5
| <?xml version="1.0" encoding="iso-8859-1"?> <!DOCTYPE content PUBLIC "-//BLACKWELL PUBLISHING GROUP//DTD 4.0//EN" "http://www.blackwellpublishing.com/xml/dtds/4-0/bpg4-0.dtd"> <content dtdver="4.0" docfmt="xml"> .... <forenames>NIELS BØIE</forenames><x> </x> |
Omdat de entity Ø niet bestaat in XML is die in de DTD (of eigenljk in een .mod die de DTD inlaad) gedefinieerd.
PHP herkent dat ook, want voordat de DTD verwijzing goed stond kreeg ik een melding over een niet herkenbare entity, en die is nu weg, maar PHP laat het karakter niet zien.
Ik krijg dus bv. NIELS BIE ipv NIELS BIØIE
Dit is de php code:
PHP:
1
2
3
| $options = LIBXML_DTDLOAD | LIBXML_NOENT | LIBXML_DTDVALID | LIBXML_NOCDATA; $doc = simplexml_load_string ( $xml,null,$options ); echo $doc->document->header->namegroup->name->forenames."\n"; |
Iemand een idee wat ik verkeerd doe?