Ahoj, mam formular, pres ktery chci nahravat XML soubory na server a pak je zpracovavat. Ke zpracovani XML v PHP pouzivam SimpleXMLElement, ktery ale pri nacteni nevalidniho XML vyhodi warningy a vyjimku. Vyjimku samozrejme odchytim, ale nevim, jak se zbavit tech warningu. Chtel bych tedy nejak zjistit, zda je soubor validni a pak ho teprve zacit zpracovavat. Zkusil jsem pouzit metodu Readeru XMLReader::isValid(), jenze ta nefunguje spravne... mam tedy xml soubor a v nem:
<?xml version="1.0" encoding="utf-8"?>
<root>
<author>Jmeno Prijmeni</author>
<nazev>Polozka</nazev>
<popis>testovaci polozka</popis>
<vlastnosti>
<vlastnost>
<nazev>Vlastnost</nazev>
<popis>testovaci vlastnost</popis>
<vlastnostiVlastnosti>
<nazev>Vlastnost vlastnosti</nazev>
<popis>testovaci vlastnost jine vlastnosti</popis>
</vlastnostiVlastnosti>
</vlastnost>
</vlastnosti>
pouziji metodu podle manualu:
<?php
$xml = XMLReader::open('xmlFile.xml');
// You must to use it
$xml->setParserProperty(XMLReader::VALIDATE, true);
print_r(var_dump($xml->isValid()));
?>
tak mi vypise bool(true), coz ocividne neni pravda, protoze tag <root> neni uzavren. Jak mam tedy v PHP zjistit, zda je xml validni? Mockrat dekuji