2009-09-09 10 views
6

Digamos que quiero ser capaz de validar que un archivo XML de 50GB + se ajusta a un XSD dado. Podría usar¿Hay alguna manera de hacer la validación XSD de una secuencia XML en PHP

DOMDocument::load & DOMDocument::schemaValidate 

pero eso llevará todo el tiempo de carga y en general agotaré toda la memoria disponible para mí. ¿Hay alguna manera de alimentar un XSD a un SAX o cualquier otro tipo de procesador de flujo y hacer que verifique que todo está bien?

Respuesta

8

Es posible utilizar XMLReader:

$reader = new XMLReader(); 
$reader->open('xmlfile.xml'); 
$reader->setSchema('schemafile.xsd'); 
while($reader->read()); 
$reader->close(); 
Cuestiones relacionadas