(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_unparsed_entity_decl_handler — 設定未解析的實體宣告處理器
設定 XML 解析器 parser
的未解析實體宣告處理器函式。
如果 XML 解析器遇到具有 NDATA 宣告的外部實體宣告,例如以下,則會呼叫 handler
<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>} NDATA <parameter>notationName</parameter>
關於已宣告標記外部實體的定義,請參見 » XML 1.0 規範的 4.2.2 節。
parser
XML 解析器。
handler
如果傳入 null
,處理器將會重置為預設狀態。
空字串也會重置處理器,但自 PHP 8.4.0 起已棄用。
如果 handler
是一個 可呼叫 物件,則該可呼叫物件會被設定為處理器。
如果 handler
是一個 字串,它可以是已使用 xml_set_object() 設定之物件的方法名稱。
自 PHP 8.4.0 起已棄用。
自 PHP 8.4.0 起,會在設定處理器時檢查可呼叫物件是否有效,而不是在呼叫它時檢查。這表示必須在將方法字串設定為回呼之前呼叫 xml_set_object()。然而,由於此行為自 PHP 8.4.0 起也已被棄用,因此建議改用適當的 可呼叫 物件作為方法。
處理器的簽名必須為
$parser
,$entity_name
,$base
,$system_id
,$public_id
,$notation_name
parser
entity_name
base
systemId
) 的基礎。
system_id
public_id
notation_name
永遠返回 true
。