Hallo molily,
$myDOM->preserveWhiteSpace = false;
Die Einstellung ändern leider nichts daran, das im HTML-Modus deplatzierte Whitespace-Knoten im DOM auftauchen.
Was eigentlich sehr schade ist.
Ich dachte eben daran, ob es eventuell möglich ist, ein DOMDocument-Objekt die HTML-Datei mit loadHTML laden zu lassen, den XML-String mit saveXML zu exportieren und in ein anderes DOMDocument-Objekt mit loadXML wieder zu laden.
Allerdings wird das Dokument auf eine von mir nicht nachvollziehbare Art geändert, sodass der Validator schließlich meckern _muss_.
Auf folgende Art und Weise ist es mir problemlos gelungen, das XHTML-Dokument (als XML) zu laden:
<?php
// Wir geben wirklich alle Meldungen aus
error_reporting(E_ALL);
// DOMDocument erzeugen
$myDOM = new DOMDocument();
// XML-Dokument laden
$myDOM->load('test.html');
// Validator starten
$result = $myDOM->validate();
if ($result) {
echo "XHTML-Dokument konnte erfolgreich geladen werden.\n";
} else {
echo "XHTML-Dokument konnte NICHT geladen werden.\n";
}
?>
Das war aber vermutlich nicht das, was wahsaga unbedingt wollte. Um HTML-Dateien in DOMDocument einzulesen, muss er anscheinend doch vorerst alle Whitespace-Zeichen entfernen.
Grüße
Marc Reichelt || http://www.marcreichelt.de/
Linux is like a wigwam - no windows, no gates and an Apache inside!
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)