函式名稱:libxml_get_external_entity_loader()
函式描述:libxml_get_external_entity_loader() 函式用於獲取當前的外部實體載入器。
適用版本:此函式在PHP 5 >= 5.4.0, PHP 7中可用。
用法:
libxml_get_external_entity_loader(): callable|false
引數:此函式沒有引數。
返回值:
- 如果成功,返回當前的外部實體載入器的回撥函式。
- 如果失敗,返回 false。
示例:
// 定義自定義的外部實體載入器
function customEntityLoader($public, $system, $context) {
// 自定義實體載入邏輯
// ...
return $content;
}
// 設定外部實體載入器
libxml_set_external_entity_loader('customEntityLoader');
// 獲取當前的外部實體載入器
$loader = libxml_get_external_entity_loader();
// 輸出當前的外部實體載入器的回撥函式
var_dump($loader); // 輸出:callable customEntityLoader(...)
// 使用當前的外部實體載入器載入實體
libxml_disable_entity_loader(false);
$doc = new DOMDocument();
$doc->load('example.xml'); // 使用外部實體載入器載入實體
在上面的示例中,我們首先定義了一個名為 customEntityLoader
的自定義外部實體載入器函式。然後,我們使用 libxml_set_external_entity_loader()
函式將自定義載入器設定為當前的外部實體載入器。接下來,我們使用 libxml_get_external_entity_loader()
函式獲取當前的外部實體載入器,並將其賦值給變數 $loader
。最後,我們使用 $loader
變數載入 example.xml
檔案中的實體。
請注意,libxml_get_external_entity_loader()
函式只能在開啟了外部實體載入器的情況下返回有效的回撥函式。