函式名稱:libxml_clear_errors()
函式描述:libxml_clear_errors() 函式用於清除 libxml 錯誤緩衝區中的所有錯誤。
適用版本:該函式在PHP 5 >= 5.1.0,PHP 7 版本中可用。
語法:libxml_clear_errors(): void
返回值:該函式沒有返回值。
示例:
// 啟用 libxml 錯誤處理
libxml_use_internal_errors(true);
// 透過載入無效的 XML 檔案引發錯誤
$doc = new DOMDocument();
$doc->load('invalid.xml');
// 獲取所有的 libxml 錯誤
$errors = libxml_get_errors();
// 輸出錯誤資訊
foreach ($errors as $error) {
echo libxml_display_error($error);
}
// 清除錯誤緩衝區
libxml_clear_errors();
// 自定義函式用於顯示錯誤資訊
function libxml_display_error($error) {
$return = "<br/>\n";
switch ($error->level) {
case LIBXML_ERR_WARNING:
$return .= "<b>Warning $error->code:</b> ";
break;
case LIBXML_ERR_ERROR:
$return .= "<b>Error $error->code:</b> ";
break;
case LIBXML_ERR_FATAL:
$return .= "<b>Fatal Error $error->code:</b> ";
break;
}
$return .= trim($error->message);
if ($error->file) {
$return .= " in <b>$error->file</b>";
}
$return .= " on line <b>$error->line</b>\n";
return $return;
}
以上示例中,我們首先透過 libxml_use_internal_errors(true)
啟用了 libxml 錯誤處理。然後,我們載入了一個無效的 XML 檔案,導致 libxml 發生錯誤。接著,我們使用 libxml_get_errors()
函式獲取所有的 libxml 錯誤,並使用自定義的函式 libxml_display_error()
顯示錯誤資訊。最後,我們使用 libxml_clear_errors()
清除錯誤緩衝區,以便後續的處理。