tom*_*asz 7 php xml validation stream
假设我希望能够验证50GB + XML文件是否符合给定的XSD.我可以用
DOMDocument::load & DOMDocument::schemaValidate
Run Code Online (Sandbox Code Playgroud)
但是这将花费所有时间来加载,并且通常会耗尽所有可用内存.有没有办法将XSD提供给SAX或任何其他类型的流处理器并让它验证一切正常?
您可以使用XMLReader:
$reader = new XMLReader();
$reader->open('xmlfile.xml');
$reader->setSchema('schemafile.xsd');
while($reader->read());
$reader->close();
Run Code Online (Sandbox Code Playgroud)