PHP 開発の基本チュートリアル: PHP XML Expat パーサー

1. XML とは

XML はデータを記述するために使用され、その焦点はデータの内容です。 XML ファイルはデータの構造を記述します。

XML には、事前定義されたタグはありません。独自のタグを定義する必要があります。

XML について詳しくは、XML チュートリアルをご覧ください。


2. Expat とは

XML ドキュメントの読み取りと更新、作成、処理を行うには、XML パーサーが必要です。

XML パーサーには 2 つの基本的なタイプがあります:

  • ツリーベースのパーサー: このパーサーは XML ドキュメントをツリー構造に変換します。ドキュメント全体を分析し、ドキュメント オブジェクト モデル (DOM) などのツリー内の要素へのアクセスを提供します。

  • イベントベースのパーサー: XML ドキュメントを一連のイベントとして扱います。特定のイベントが発生すると、パーサーはそれを処理する関数を呼び出します。

Expat パーサーはイベントベースのパーサーです。

イベントベースのパーサーは、XML ドキュメントの構造ではなくコンテンツに焦点を当てます。このため、イベントベースのパーサーはツリーベースのパーサーよりも高速にデータにアクセスできます。

次の XML フラグメントをご覧ください:

<from>Jani</from>

イベントベースのパーサーは、上記の XML を一連の 3 つのイベントとして報告します:

  • 開始要素: from

  • CDATA セクションの開始、値: Jani

  • 終了要素: from

上記の XML の例には、整形式の XML が含まれています。ただし、このインスタンスには関連付けられた文書型宣言 (DTD) がないため、無効な XML です。

ただし、Expat パーサーを使用する場合には違いはありません。 Expat は、有効性をチェックせず、DTD を無視するパーサーです。

イベントベースの非検証 XML パーサーとして、Expat は高速かつ軽量であるため、PHP Web アプリケーションに非常に適しています。

注: XML ドキュメントは適切な形式である必要があります。そうでない場合、Expat はエラーを生成します。


3. インストール

XML Expat パーサー関数は、PHP コアの不可欠な部分です。これらの機能を使用するためにインストールは必要ありません。


4. XML パーサー

PHP で XML パーサーを初期化し、さまざまな XML イベントのハンドラーを定義して、この XML ファイルを解析する必要があります。

例:

コードは次のとおりです:
<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

注: ここの test.xml ファイルは、このセクションの 4 番目の部分の内容です

6. PHP Expat パーサーの詳細

PHP Expat 関数の詳細については、PHP XML パーサー リファレンス マニュアルを参照してください。


学び続ける
||
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜