xml_set_element_handler

(PHP 4, PHP 5, PHP 7, PHP 8)

xml_set_element_handler開始要素および終了要素のハンドラを設定する

説明

xml_set_element_handler(XMLParser $parser, callable $start_handler, callable $end_handler): bool

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

パラメータ

parser

開始要素および終了要素のハンドラ関数を設定する XML パーサへの参照。

start_handler

start_handler という名前の関数は、 次の 3 つのパラメータをとる必要があります。

start_element_handler(XMLParser $parser, string $name, array $attribs)
parser
最初のパラメータである parser は、 ハンドラをコールする XML パーサへのリファレンスです。
name
2 番目のパラメータである name は、 このハンドラがコールされた要素の名前を有しています。 大文字変換 がこのパーサに関して有効な場合、要素の名前は大文字になります。
attribs
第 3 のパラメータである attribs は、その要素の (全)属性に関する連想配列です。この配列のキーは属性の名前であり、 値は属性の値です。属性の名前は、要素名と同様に 大文字変換 となります。 属性の値は、大文字変換 されません この属性は、each() を使用して attribs を順次アクセスすることにより、 元の順序で取得することができます。 配列の最初のキーが最初の属性であり、後も同様です。

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

end_handler

end_handlerという名前の関数は、 2 つのパラメータをとる必要があります。

end_element_handler(XMLParser $parser, string $name)
parser
最初のパラメータである parser は、 ハンドラをコールする XML パーサへのリファレンスです。
name
2 番目のパラメータである name は、 このハンドラがコールされた要素の名前を有しています。このパーサにおいて 大文字変換 が有効な場合、要素名は大文字になります。

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

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.0.0 引数 parser は、 XMLParser インスタンスを期待するようになりました。 これより前のバージョンでは、リソースが期待されていました。
関連キーワード:  要素, ハンドラ, handler, parser, 設定, 開始, 終了, 関数, パラメータ, 名前