xml_set_element_handler

(PHP 3 >= 3.0.6, PHP 4, PHP 5)

xml_set_element_handler -- start および end 要素のハンドラを設定する

説明

int xml_set_element_handler ( int parser, string startElementHandler, string endElementHandler )

XMLパーサーparserの要素ハンドラ関数を設定 します。startElementHandler および endElementHandlerは、 xml_parse()parserをコー ルした際に存在している必要がある関数の名前を有する文字列です。

startElementHandler という名前の関数は、 次の3つのパラメータをとります。 startElementHandler ( int parser, string name, string attribs )

parser

最初のパラメータ、parserはハンドラ をコールする XML パーサーへのリファレンスです。

name

2番目のパラメータ、name は、 このハンドラがコールされた要素の名前を有しています。 大文字変換 がこのパーサー に関して有効な場合、要素の名前は大文字になります。

attribs

第3のパラメータ、attribsはその要素の (全)属性に関する連想配列です。この配列のキーは属性の名前であ り、値は属性の値です。属性の名前は、要素名と同様に 大文字変換 となります。 属性の値は、大文字変換 されません

この属性は、each() を使用して attribs を順次アクセスすることにより 元の順序で取得することができます。配列の最初のキーは最初の属 性であり、後も同様です。

endElementHandlerという名前の関数は、2つの パラメータをとります。 endElementHandler ( int parser, string name )

parser

最初のパラメータ、parser は ハンドラをコールする XML パーサへのリファレンスです。

name

2番目のパラメータ、name はこのハンドラ がコールされた要素の名前を有しています。このパーサにおいて 大文字変換 が有効な場合、要素名は大文字になります。

あるハンドラ関数が空の文字列または FALSE に設定されている場合、そのハンドラは無効です。

ハンドラが設定されている場合にTRUEparserがパーサでない場合に FALSEが返されます。

注意: 関数名の代わりに、オブジェクトへの リファレンスを格納した配列とメソッド名を指定することも出来ます。