Próbuję analizować prosty plik, i chcę wiedzieć, pomiędzy:Co jest szybszym analizatorem składni XML?
XML::Simple
XML::Smart
LibXML
których jeden jest szybszy?
Próbuję analizować prosty plik, i chcę wiedzieć, pomiędzy:Co jest szybszym analizatorem składni XML?
XML::Simple
XML::Smart
LibXML
których jeden jest szybszy?
XML :: LibXML jest najszybszy, zobacz benchmarki na Ways to Rome.
Może to, ale nie musi, dotyczyć "pliku prostego" (co, jak zakładam, oznaczałoby, że nie jest zbyt duży).
Jest też XML :: Fast, który wydaje się być dość poważnym rywalem. XML :: Simple może używać XML :: LibXML pod maską, ale wciąż widzę to jako główny procesor w moim testowaniu CalDAV.
Warto spróbować, jeśli zależy nam na dużej prędkości.
Łatwo: Użyj XML :: LibXML, który ma zaletę korzystania z biblioteki napisanej w C. Implementuje również znany DOM. XML :: Simple nie jest ani prosty, ani nie jest promowany przez jego autora (https://metacpan.org/module/XML::Simple#STATUS-OF-THIS-MODULE). (Nie jestem uprawniony do komentowania XML :: Smart, ale sądząc po przykładzie w dokumentach, nie bardzo by mi się to podobało). Jeśli masz bardzo duże dokumenty, które muszą być przesyłane strumieniowo, użyj zamiast tego [XML :: Twig] (https://metacpan.org/module/XML::Twig). – amon
@amon - XML :: Simple i XML :: Smart zarówno używają expata do parsowania XML, który jest również napisany w języku C. – Quentin
"Streaming" jest również możliwy z 'XML :: LibXML', po prostu spróbuj' XML :: LibXML :: Reader' lub 'XML :: LibXML :: SAX'. –