Autor Zpráva
Anonymní
Profil *
Zdravím páni programátoři...

Dva problémky, první pravděpodobně jednodušší:

Nevěděl by někdo jak v DOMDocumentu potlačit výpis XML deklarace? Pravděpodobně jsem to přehlédnul (resp. přehlížím celý den...). Manuál jsem projel snad celý....

A druhá horší chyba:

při pokusu o spuštění

$foo = new DOMDocument('1.0', 'utf-8');
$foo->loadXML('<link rel="stylesheet" type="text/css" href="/css/default.css" media="screen, projection" /><link rel="stylesheet" type="text/css" href="/css/print.css" media="print" />');

na mě vyjede warning:

Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Extra content at the end of the document in Entity, line 1

zkoušel jsem i trim, kdyby tam byly nějaký whitespacy nebo tak něco, ale problém přetrvává. nic rozumného jsem nevygoogloval
izsak
Profil
XML Document musí obsahovať iba jediný objekt Element - root XML node. Tento Node môže následne obsahovať rôzny počet Nodov.

Zrejme by si mal používať Document Fragment, čo je časť XML dokumentu. (Môže obsahovať viaceré XML Nody na jednej úrovni a po vložení do XML DOMu sa nevykresľuje - vloží len Nody, ktoré obsahuje).
Anonymní
Profil *
nakonec jsem to vyřešil takhle... (vlastně tak jak řikáš, trik s jediným DocumentElementem):

$foo->loadXML('<foo>{xmlData}</foo>');

ale jak se zbavit XML deklarace při $foo->saveXML() jsem doposud nezjistil. Prohánět to přes XSL se mi zdá zbytečné.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0