$reader = new XMLReader(); $reader->open($tmp->getPath()); $reader->setSchema($schemat->getPathToFile()); libxml_use_internal_errors(true); // read xml structure while($reader->read()); // close xml $reader->close(); $tmp->delete(); foreach (libxml_get_errors() as $error) { } return $this->error('schema', $schemaValidate, 'invalidFormat'); }else{ return null; }
Powyższy fragment waliduje mi plik XML na postawie pliku XSD.
Plik XSD ma dodatkowe zewnętrzne definicje które są pobierane w czasie walidacji.
Problem w tym że gdy pobierane są te definicje to zwracany jest błąd :
"failed to load external entity "http:"
Ponieważ zwracany jest Redirect dla tych zewnętrznych definicji.
Dla potomnych, opcja "allow_url_fopen"
Musi być włączona

Temat zamknięty.