xml_set_unparsed_entity_decl_handler
(PHP 4, PHP 5, PHP 7)
xml_set_unparsed_entity_decl_handler — 処理されないエンティティ宣言用ハンドラを設定する
説明
XML パーサ parser
の、
処理されないエンティティ宣言用ハンドラ関数を設定します。
このハンドラは、XML パーサが次のような NDATA 宣言を有する 外部エンティティ宣言を処理する際にコールされます。
<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>} NDATA <parameter>notationName</parameter>
外部エンティティ宣言の記述用定義に関しては、 [http://www.w3.org/TR/1998/REC-xml-19980210#sec-external-ent » XML 1.0 仕様の 4.2.2 節]を参照ください。
パラメータ
parser
処理されないエンティティ宣言用ハンドラ関数を設定する XML パーサへの参照。
handler
handler
は、parser
に関して xml_parse() がコールされた際に必要な関数の名前を有する文字列です。handler
という名前の関数は次のような 6 つのパラメータをとる必要があります。handler ( XMLParser
$parser
, string$entity_name
, string$base
, string$system_id
, string$public_id
, string$notation_name
)parser
- 最初のパラメータ、parser は ハンドラをコールする XML パーサへのリファレンスです。
entity_name
- 宣言しようとするエンティティの名前。
base
-
外部エンティティのシステム ID(
systemId
) を取得する際の基本となります。現在、このパラメータは、常に 空の文字列に設定されています。 system_id
- 外部エンティティのシステム ID。
public_id
- 外部エンティティのパブリック ID。
notation_name
- このエンティティの表記法の名前 (xml_set_notation_decl_handler() を参照ください)。
ハンドラ関数が空の文字列または
false
に設定されていた場合、そのハンドラは無効となります。注意: 関数名の代わりに、オブジェクトへの リファレンスを格納した配列とメソッド名を指定することもできます。
返り値
成功した場合に true
を、失敗した場合に false
を返します。