Je crée un formulaire Web dans lequel les administrateurs de mon site peuvent ajouter du XML à une zone de texte et le soumettre pour être stocké dans une table de base de données, mais je suis un peu confus quant à la meilleure méthode d'analyse XML. Le script PHP doit analyser le code XML et s'il y a des erreurs d'analyse, il doit retourner le message d'erreur et la ligne/colonne où l'analyseur a arrêté à l'administrateur qui a envoyé le formulaire. Après l'avoir analysé, il doit accéder au DOM pour exécuter plusieurs vérifications de l'existence de nœuds et d'attributs en utilisant XPath. Si j'utilise xml_create_parser()
et xml_parse()
, je peux obtenir l'information d'erreur détaillée que je suis après si faux est retourné. Cependant, je ne peux pas accéder au DOM du XML après l'avoir analysé. Si j'utilise DOMDocument::loadXML()
, d'après ce que j'ai lu, il ne lance pas d'exceptions pour les erreurs d'analyse, il les affiche simplement dans le journal PHP.Comment puis-je obtenir des informations d'erreur détaillées lors de l'analyse XML tout en conservant le DOM?
Serait-ce un grand succès de performance si j'ai d'abord essayé xml_parse()
et puis si cela fonctionne, exécutez DOMDocument::loadXML()
, compte tenu des fichiers sont généralement plus petits que 10KB avec quelques-uns étant 10-20KB? Est-ce que quelqu'un sait un meilleur moyen?
Merci. Chaque fois que je cherchais, je trouvais des gens qui définissaient leurs propres gestionnaires d'erreurs et je ne voyais pas comment obtenir les numéros de ligne/colonne de l'erreur de cette façon. –