PHP: DOMDocument loadHTML возвращает ошибку с неправильным URL в href - PullRequest
1 голос
/ 19 февраля 2011

В последнее время я получаю исключение, когда пытаюсь реализовать специальный шаблонизатор.

Моя проблема с загрузкой DOMDocument на самом деле заключается в том, что я использую некоторые заполнители в href, и они будут заменены реальными значениями.Я хочу сохранить этот шаблон и использовать его каждый раз, когда он мне нужен, вот пример кода

    $this->dom = new DOMDocument;
    $load_html = $this->dom->loadHTML($html);

. А часть HTML выглядит как

<a href="@_@web_site_address@_@">Visit our web site</a>

, а исключение составляет

Fatal error: DOMDocument::loadXML() [<a href='domdocument.loadxml'>domdocument.loadxml</a>]: EntityRef: expecting ';' in Entity

Я пытался найти способ пропустить эту проверку, но ничего не смог найти.

Ответы [ 2 ]

3 голосов
/ 21 февраля 2011

Я нашел в чем проблема. В моем URL это был знак &, я заменил его на &amp; и теперь он работает.

3 голосов
/ 19 февраля 2011

Это не вызывает ошибки в PHP 5.3.У вас должен быть какой-то другой HTML, который вызывает это.Обычно вы видите это, когда используете сущность без;после него.

<a href="#">Foo &nbsp Bar</a>

Это вызывает ту же ошибку для меня.Ищите какую-то сущность без;в теме.Браузеры отобразят это, но это не правильно.

...