1
$rss = new DOMDocument();
$rss->load($url);

ユーザーが xml ドキュメントを取得するために任意の rssfeed リンクを提供することを期待している場合、ユーザーは xml ドキュメントを含まないランダムなリンクを提供しようとしています。確かにエラーや警告が表示されます。

この状況を確認するにはどうすればよいですか?

4

3 に答える 3

4

libxml_use_internal_errors自分でエラーを処理するために使用します。http://php.net/manual/de/function.libxml-use-internal-errors.phpの例

// enable user error handling
libxml_use_internal_errors(true);

// load the document
$doc = new DOMDocument;

if (!$doc->load('file.xml')) {
    foreach (libxml_get_errors() as $error) {
        // handle errors here
    }

    libxml_clear_errors();
}
于 2013-03-29T12:47:27.190 に答える
0

これを試して:

$errors = array();
set_error_handler(function ($number, $error) use (&$errors) {
    if (preg_match('#^DOMDocument::load\(\):#', $error)) {
        $errors[] = $error;
    }
});

$url = '';
$doc = new DOMDocument();
if ($doc->load($url) === false) {
    // handle errors from $errors
}

restore_error_handler();
于 2013-03-29T13:01:26.670 に答える
0

load の戻り値を使用してエラーをチェックし、出力を抑制することができます@

$rss = new DOMDocument();
if (@$rss->load($url) == false) {
    //error...
}
于 2013-03-29T12:43:50.237 に答える