PHP で Extensible Markup Language (XML) を読み書きするのは少し怖いように思えるかもしれません。実際、XML とそれに関連するすべてのテクノロジは恐ろしいものですが、PHP での XML の読み取りと書き込みは、必ずしも恐ろしい作業である必要はありません。まず、XML について少し学ぶ必要があります。つまり、XML とは何なのか、そして XML をどう扱うのかを学ぶ必要があります。次に、PHP で XML を読み書きする方法を学ぶ必要があります。これを行う方法はたくさんあります。
XMLとは何ですか?
XMLはデータの保存形式です。どのようなデータが保存されるかは定義されず、データの形式も定義されません。 XML はタグとそのタグの属性を定義するだけです。整形式の XML マークアップは次のようになります:
リーリー
この
XML で何かを記述する方法は複数あります。たとえば、このタグは前のタグと同じ出力を形成します:
リーリーXMLタグに属性を追加することも可能です。たとえば、この
特殊文字は XML を使用してエンコードすることもできます。たとえば、& 記号は次のようにエンコードできます:
リーリータグと属性を含む XML ファイルは、例のようにフォーマットされていれば整形式です。これは、タグが対称的であり、文字が正しくエンコードされていることを意味します。リスト 1 は、整形式の XML の例です。
リスト 1. XML 書籍リストの例
リスト 1 の XML には書籍のリストが含まれています。親タグ
XML がハイパーテキスト マークアップ言語 (HTML) によく似ていると思うなら、それは正しいです。 XML と HTML は両方ともマークアップベースの言語であり、多くの類似点があります。ただし、XML ドキュメントは整形式の HTML である場合もありますが、すべての HTML ドキュメントが整形式の XML であるわけではないことに注意することが重要です。改行タグ (br) は、XML と HTML の違いを示す良い例です。この改行タグは整形式の HTML ですが、整形式の XML ではありません:
リーリーこの改行タグは整形式の XML および HTML です:
リーリーHTML を整形式 XML として記述したい場合は、W3C 委員会の Extensible Hypertext Markup Language (XHTML) 標準に従ってください (「参考文献」を参照)。最新のブラウザはすべて XHTML をレンダリングできます。さらに、XML ツールを使用すると、XHTML を読み取ってドキュメント内のデータを検索できます。これは、HTML を解析するよりもはるかに簡単です。