За последние 24 часа нас посетили 23048 программистов и 1633 робота. Сейчас ищут 1263 программиста ...

Как сохранить HTML код в XML

Тема в разделе "PHP для профи", создана пользователем JastaFly, 4 мар 2024.

  1. JastaFly

    JastaFly Активный пользователь

    С нами с:
    4 ноя 2019
    Сообщения:
    46
    Симпатии:
    3
    Мне нужно сохранить HTML код в XML файл, для этого используется следующий код:
    PHP:
    1. $xml = new SimpleXMLElement('<texts/>'); $xml->addChild('text', $myHtmlCode); $xml->asXML('path/to/file.xml');
    Данные успешно сохраняются, проблема в том что я не могу их получить, так как данный код:
    PHP:
    1. $myData = simplexml_load_file('path/to/file.xml');
    Возвращает различные ошибки парсинга XML, то:
    Код (Text):
    1. simplexml_load_file() parser error: Entity 'nbsp' not defined
    или:
    Код (Text):
    1. Validation error : EntityRef: expecting ';'
    Как можно сохранить HTML в XML и избежать подобных проблем?
     
  2. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.842
    Симпатии:
    652
    Простого HTML-кодирования обычно хватает. Причем кавычки/апострофы кодировать не обязательно, если вы не пытаетесь запихнуть это в XML-атрибут. В общем все то же самое, что и с HTML в HTML.
     
  3. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    444
    Симпатии:
    87
    Адрес:
    Бавария, Германия
    Добрый день!
    Проблема в HTML entities.
    В XML допускается только пять entities:
    &amp;, &lt;, &gt;, &apos;и &quot;
    Поэтому на еntity &nbsp; выдаётся ошибка.
    simplexml_load_file() parser error: Entity 'nbsp' not defined
    Также и на других недопустимых entities в HTML коде.
    Удачи!