## Обработка ошибок в XML-документах

Ошибки при загрузке XML-документов обрабатывают функциями модуля libxml, которыми возможно подавить все XML-ошибки, а затем обработать каждую ошибку отдельно.

Объект LibXMLError, который возвращает функция libxml_get_errors(), содержит ряд свойств, в том числе сообщение, номер строки и колонку, или позицию, ошибки.

Пример #1 Загрузка XML-строки с неправильным синтаксисом

    <?php

    libxml_use_internal_errors(true);

    $sxe = simplexml_load_string("<?xml version='1.0'><broken><xml></broken>");

    if (!$sxe) {
        echo "Ошибка загрузки XML\n";

        foreach(libxml_get_errors() as $error) {
            echo "\t", $error->message;
        }
    }

    ?>

Результат выполнения приведённого примера:

    Ошибка загрузки XML
        Blank needed here
        parsing XML declaration: '?>' expected
        Opening and ending tag mismatch: xml line 1 and broken
        Premature end of data in tag broken line 1

## Смотрите также

- libxml_use_internal_errors()
- libxml_get_errors()
- Класс LibXMLError

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open