Hallo,
bei $doc->save(PATH); und auch bei $doc->saveXML(PATH);?
Ja, weil Du nicht ausschließen kannst, das die Datenmenge größer ist als der Schreibbuffer. In einem solchen Fall kann es passieren, das der I/O-Scheduler nach Schreiben des Buffers einem anderen Prozess gewährt, den noch nicht vollständigen Inhalt auszulesen, was in Deinem Fall zu einem XML Parse Error führen würde.
Die Frage ist, was passiert bei save?
Es werden die Daten im XML-Format geschreiben.
Das war schon klar. Vielleicht anders gefragt: Wenn ich save nutze, wird dabei automatisch das File gesperrt? Sollte es nicht eigentlich so sein? Weil es wird ja definitiv was geschrieben in eine Datei, da sollte dann doch auch gleich mitgedacht worden sein, und die Datei, in die gerade geschrieben wird, gesperrt werden.
Gruß aus Potsdam,
Kerstin