PHP ile xml dosyalarını ayrıştırma için SimpleXML alternatifleri

3 Cevap php

ben sadece PHP ile XML veri ayrıştırma için SimpleXML herhangi bir alternatifi olup olmadığını bilmek istiyorum.

Örneğin SimpleXML modülü yüklü olup olmadığını bir lib / sınıf orada daha sonra daha iyi bir performans SimpleXML olduğunu olsa bile.

3 Cevap

Açıkçası hem PHP uzantıları ve userspace kitaplıkları gibi a ton of different way to process XML var. Sorun hepsi çok much daha karmaşık SimpleXML fazla ve hiçbir yerde hızlı rastgele erişim için olmasıdır.

Gerçi senin sorunun amacı ne emin değilim. Eğer SimpleXML mevcut değildir durumunda son çare istiyorsanız o zaman çabalarını çoğaltmak gerekir bu yüzden bu kütüphaneleri / uzantıları hiçbiri ortak bir API paylaşabilirsiniz. Ama gerçekte, SimpleXML devre dışı bırakmak için hiçbir neden nedenle böyle bir acil durum planı üzerinde çalışmak için bir neden yok neredeyse var.

Sen DOM extension kullanabilirsiniz. Bu avantajı, birçok kişi zaten (örneğin Javascript gelen) DOM aşina vardır. Tabii ki, DOM çok acı.

Büyük XML dosyalarını okuma, olay modeli bir zorunluluktur (SAX düşünüyorum). Bkz here.

De bulunmaktadır xml_parser (bakınız http://php.net/manual/en/book.xml.php) aswell olduğu XMLReader / XMLWriter (http://www.php.net/manual/en/book.xmlreader.php / http://www.php.net/manual/en/book.xmlwriter.php). SimpleXML (en azından 5.x beri) varsayılan başına php derlendi. Ben genellikle SimpleXML sopa gibi sana XMLReader / XMLWriter veya xml_parser performansı hakkında pek söyleyemem.

Cheers,
Fabian