Это сводит меня с ума, много подобных проблем в Интернете, но я не могу найти правильное решение.
Я создаю XML-документ на PHP, который будет отправлен в ответ назапрос ajax.Ответ будет выглядеть примерно так:
<?xml version="1.0" encoding="iso-8859-1"?>
<response>
<status>success</status>
<message> —</message>
</response>
Тег будет содержать более значимую информацию, чем эта, но именно такие объекты, как те, которые вызывают у меня проблему.
Код php, которыйгенерирует, что xml ниже:
header("Content-Type: text/xml");
$dom = new DOMDocument('1.0', 'iso-8859-1');
$dom->formatOutput = true;
$response_node = $dom->createElement("response");
$dom->appendChild($response_node);
$response_node->appendChild($dom->createElement('status', 'success'));
$response_node->appendChild($dom->createElement('message', " &mdash"));
echo $dom->saveXML();
return;
Показанный выше xml успешно возвращается в функцию javascript, которая выполняла вызов, но когда он пытается проанализировать документ xml, он терпит неудачу.
Если я пытаюсь проверить xml, используя этот валидатор , я получаю следующую ошибку:
Эта страница содержит следующие ошибки:
ошибка в строке 5 в столбце15: Сущность 'nbsp' не определена
Сущность —
вызывает ту же проблему.
Думаю, мне нужно найти способ поместить что-то подобное в xml:
<!ENTITY name "entity_value">
Я не уверен, как это сделать, или если это правильный путь.Разве я не правильный путь?Если да, то как мне это сделать?Если нет, как правильно решить эту проблему?