【PHP】XMLReaderでXMLを高速に処理をする

ここここでDOMとSimpleXMLについて書きましたが、調べていくうちに目にとまるようになったのがXMLReaderなるもの。

XMLReaderを使うとread()を行うたびに階層(ノード)単位で読み込んでいくので、すべてのXMLを読み込まなくても、必要な階層(ノード)に辿りついた時点で処理を行えます。そのため、大きなXMLファイルを扱う場合などメモリの消費を抑えることができ、高速に処理ができるようです。

ここにサンプルコードがあるのでメモ。マニュアルはここ

XMLReaderはPHP5.1.0以上であればデフォルトで組み込まれているので、インストールは不要。

大量のデータをXMLでやり取りする場合は必須となりそう。