Salut tout le monde. Voila, je bosse avec un xml... Seul problème, j'ai besoin de vérifier la validité du XML (car oui, je ne suis pas sur que mes XML soient valide... ils viennent de HTML).
En gros, je voudrai essayé de faire un truc dans ce genre la :
soit je retourne le XML, soit je retourne false... Ou un autre moyen de faire une vérification XML sans utiliser HTMLTidy...
J'ai réussit a faire ca : <?php function verif_text( $text ) { $HTML_TO_XML = simplexml_load_string( $text ); if ( $HTML_TO_XML ) return true; else return false; }
if ( verif_text("<test") ) echo "OK"; else echo "ERREUR"; ?> mais j'ai toujours mes erreurs qui s'affichent... Alors si quelqu'un a une idée un peu plus propre...
Euh je vois pas bien ce que tu essayes de faire avec ce bloc try-catch. J'ai comme l'impression que ton bloc catch ne sera jamais executé, car
Code:
return simplexml_load_string("<gregre>");
ne lancera jamais d'exception. De manière générale, un bloc try avec une seule instruction n'a pas vraiment d'intéret en fait.
Sinon regarde peut-être plutôt du côté de la méthode loadHTML de l'objet DOMDocument ( http://fr2.php.net/manual/fr/function.dom-domdocument-loadhtmlfile.php ), ca semble faire automatiquement ce que tu essaies de faire (et en plus, DOM est plus pérenne de SimpleXML, qui pourrait dégager d'ici PHP6).
Ouep mais effectivement, ca a pas été prévu de renvoyer une erreur... Donc bon... c'est pas trop grave... Je pensai que c'était comme en javascript : lorsqu'une erreur est lancée, même si c'est sur une fonction genre getElementById, ca attrape l'erreur...
Mais de toute facon, le problème est résolut... Mes erreurs provenaient de certaines choses que j'ai vu ici même (sur ce forum)... En gros je fait une fonction HTMLtoXML.. et dans la source du forum, y avait un "script planqué" : "<scr"+"ipt" ou un truc comme ca qui trainait... Mais c'est bon... Maintenant, je devrait pouvoir changer a peut pret n'importe quelle page HTML en XML
PS : effectivement, DOMDocument() semble permettre de faire ce que je veux mais... moi je veux faire sur une String et pas sur un fichier... et en plus, après avoir essayé sur des HTML, ca me renvoit plusieurs erreur que moi j'ai pas avec ma fonction...
DONC MOI MON TRUC C'EST MIEUX NA
« Dernière Édition: le 12-02-2007 a 19:51:01 par tavman »