XMLパーサー npxml
Last update: 2011/12/07
npxmlの概要
npxmlは XML形式で記述されたファイル、データを取り扱うためのライブラリです。
XMLを扱う方法、ライブラリは数ありますが、npxmlは何よりも平易で直感的な操作で、少ないコーディングで扱えることを意識して作られています。
npxmlは最初 Perlで作られ、その後 Webアプリケーションの分野で PHPがメジャーになったことに伴い、PHPでも作られました。PHP版の npxmlはまだ XMLデータを読み込むのみで、書き込むことには対応していません。
ここでは、よりシンプルな PHP版の npxmlをベースにしてご紹介させて頂きます。
サンプル
npxmlは XMLデータの階層構造をそのまま多次元配列に変換します。要素の属性は、属性名の先頭にアットマーク @
を付けて表現します。また、データそのものではなくデータを扱うためのメタ的な情報には、先頭にハイフン -
を付けて表現します。
サンプルとして、以下のような XMLデータを用意しました。
この XMLデータのファイル名を majorsports.xml とし、以下のコードを試行してみます。
出力結果は以下のようになります。
ソースコード
以下のリンクより PHP版、及び Perl版の npxmlを参照できます。ご利用の際は拡張子 .txt を取り外してお使いください。
PHP版は Perl版の移植ではありません。Perl版も PHP版と似たような使い方が出来ますが、プログラミングスタイルはかなり異なります。また、どちらも今のところ詳しいご説明などがありませんがご了承ください。
利用について
このライブラリは著作権を放棄しないフリーウェアです。動作についての保証などはありませんが、商用、非商用問わずどなたでもご利用頂けます。スクリプト上部の著作表示は削除しないようお願いします。ご質問やご相談などありましたらお問い合わせください。
改訂歴
- [2011/07/18]: Perl 及び PHP版の npxmlを公開
- [2011/09/14]: PHP版 v.09b; P.I.が複数あると誤動作するバグなどを修正
- [2011/12/07]: PHP版 v.09c; HTMLエンティティがデコードされていなかった不備を修正