[php]simplexml_load_file fout op - teken

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Jochemmol
  • Registratie: Augustus 2004
  • Laatst online: 07-05-2014
Ik heb een XML file waarin een tag staat

<naam-partner>

Volgens W3.org en dan de XML checker is dit goed. Ik wil deze file inlezen in php.

Zo
PHP:
1
2
3
4
5
$xml = simplexml_load_file($file)
foreach ($xml->member as $item)
{
   // bewerking
}

echter pakt de code het - teken niet. 8)7

De encoding van het xml bestand is UTF-8.

Ik kan nu wel een tool maken die de - replaced bijvoorbeeld maar dit hoort toch niet. simplexml moet dat toch gewoon doen? :?

Doe ik het inlezen niet goed?

[ Voor 5% gewijzigd door Jochemmol op 06-10-2006 11:36 ]

Jochemmol


Acties:
  • 0 Henk 'm!

  • japsai
  • Registratie: Augustus 2003
  • Niet online
Voor wat ik tot nog toe kon vinden lijkt de - ('Hyphen') lastig omdat c-gerelateerde API's zoals SimpleXML het niet aankunnen. Kun je niet beter een underscore gebruiken?

edit: Hier staat weer dat het wel mag.. :?

[ Voor 28% gewijzigd door japsai op 06-10-2006 11:42 ]


Acties:
  • 0 Henk 'm!

  • 4Real
  • Registratie: Juni 2001
  • Laatst online: 14-09-2024
Hij geeft geen error ofzo?
PHP:
1
$errors = libxml_get_errors(); print_r($errors);

Acties:
  • 0 Henk 'm!

  • japsai
  • Registratie: Augustus 2003
  • Niet online
Hier staat hetzelfde probleem met 'een' oplossing, maar misschien niet zo fijn.

Acties:
  • 0 Henk 'm!

  • Jochemmol
  • Registratie: Augustus 2004
  • Laatst online: 07-05-2014
Hij voert de code gewoon uit alleen alles na het - teken ´bestaat´ niet.

Tja de oplossing. moet ik gebruiken omdat de leverancier wijzigd het niet omdat het een toegestaane karakter is. Dus moet ik voor een oplossing zorgen

Jochemmol


Acties:
  • 0 Henk 'm!

  • yiko
  • Registratie: September 2003
  • Laatst online: 20-04 20:19
Het minteken zorgt bij mij voor geen enkel probleem.

PHP:
1
2
3
4
5
6
// completely bogus example xml
$string = '<root><boe><a>b</a><something-something>aardvark</something-something></boe></root>';

$xml    = simplexml_load_string( $string );

echo $xml->boe->{'something-something'},PHP_EOL;

Dit print netjes "aardvark", zoals verwacht.
Pagina: 1