warning
sとerror
sのリストを単純なエラーバナーに置き換えたい。このコードでエラーが発生するかどうかを確認しようとしています。エラーが発生する場合は、カスタムエラーを出力します
$sxml = simplexml_load_file($yurl)
私はtry
catch
ブロックをいじってみましたが、うまくいかないようです。助けていただければ幸いです。
warning
sとerror
sのリストを単純なエラーバナーに置き換えたい。このコードでエラーが発生するかどうかを確認しようとしています。エラーが発生する場合は、カスタムエラーを出力します
$sxml = simplexml_load_file($yurl)
私はtry
catch
ブロックをいじってみましたが、うまくいかないようです。助けていただければ幸いです。
使用するlibxml_use_internal_errors()
<?php
libxml_use_internal_errors(true);
$sxml = simplexml_load_file($yurl);
if (!$sxml) {
foreach (libxml_get_errors() as $error) {
// Custom error banner here
switch ($error->level) {
case LIBXML_ERR_WARNING:
$return .= "Warning $error->code: ";
break;
case LIBXML_ERR_ERROR:
$return .= "Error $error->code: ";
break;
case LIBXML_ERR_FATAL:
$return .= "Fatal Error $error->code: ";
break;
}
}
//clears libxml error buffer
libxml_clear_errors();
}
?>
libxml_get_errors()
オブジェクトの配列を返しlibXMLError
ます。
catch
エラーではなく、例外のみが可能です。
set_error_handler()
PHPのデフォルトのエラーハンドラを独自の関数に置き換えるために使用します。