We use a custom error handler using set_error_handler() I found that after I call
libxml_use_internal_errors(false);
It resets my error_handler - not sure if this is a bug or not, I will report it as a bug - however, I needed to repeat my call to set_error_handler
(did confuse me for a while)
libxml_use_internal_errors
(PHP 5 >= 5.1.0)
libxml_use_internal_errors — libxmlエラーを無効にし、ユーザが必要に応じてエラー情報を取得できるようにする
説明
bool libxml_use_internal_errors
([ bool $use_errors
] )
libxml_use_internal_errors() により、 標準のlibxmlエラーを無効にし、ユーザによるエラー処理を有効にすることができます。
パラメータ
- use_errors
-
ユーザによるエラー処理を有効または無効にする。デフォルトは、FALSEです。
返り値
この関数は、 use_errors の前の値を返します。
例
例1 libxml_use_internal_errors()の例
この例は、libxmlエラーとこの関数により返された値の 貴本的な使用方法に示すものです。
<?php
// ユーザによるエラー処理を有効にする
var_dump(libxml_use_internal_errors(true));
$doc = DOMDocument::load('file.xml');
if (!$doc) {
$errors = libxml_get_errors();
foreach ($errors as $error) {
// handle errors here
}
libxml_clear_errors();
}
?>
上の例の出力は以下となります。
bool(false)
libxml_use_internal_errors
james at dunmore dot me dot uk
21-Aug-2008 12:03
21-Aug-2008 12:03
B Crawford
04-Oct-2007 03:22
04-Oct-2007 03:22
When using this funtion, be sure to clear your internal error buffer. If you dn't and you are using this in a long running process, you may find that all your memory is used up.
