powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xml xsl и эскейп последовательности
4 сообщений из 4, страница 1 из 1
xml xsl и эскейп последовательности
    #37173471
rustam_frm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Для извлечение html фрагментов из ответа сервера на запрос клиента я перехватываю ответ сервера и посредством xml, xsl извлекаю необходимые фрагменты. Для примера предположим что $content содержит ответ сервера до обработки:
Код (php): скопировать код в буфер обмена
$dom = new domDocument();
$dom->loadXML($content);
$xslProgram = <<<xslProgram
<xsl:stylesheet version='1.0'
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:output method="html" encoding='UTF-8' indent="yes" />

<xsl:template match="/">
<xsl:copy-of select="$select" />
</xsl:template>

</xsl:stylesheet>
xslProgram;

$domXsl = new domDocument();
$domXsl->loadXML($xslProgram);
$xsl = new XSLTProcessor();
$xsl->importStylesheet($domXsl);

$content = $xsl->transformToXml($dom);
$select - xPath выражение. В принципе все нормально работает, вот только при обнаружении эскейп последовательностей ( , «, » и т.п.) естественно всплывает сообщение "Warning: DOMDocument::loadXML() [function.DOMDocument-loadXML]: Entity 'laquo' not defined in Entity". По началу я просто заменял все эскейп последовательности их юникод эквмвалентами (str_replace), но со временем понял что все варианты таким способом не предусмотришь. Как можно решить эту проблему?
...
Рейтинг: 0 / 0
xml xsl и эскейп последовательности
    #37173518
refreg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rustam_frmно со временем понял что все варианты таким способом не предусмотришь. Как можно решить эту проблему?Можно и все варианты - Character entity references in HTML 4
...
Рейтинг: 0 / 0
xml xsl и эскейп последовательности
    #37173530
rustam_frm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
refregrustam_frmно со временем понял что все варианты таким способом не предусмотришь. Как можно решить эту проблему?Можно и все варианты - Character entity references in HTML 4
Конечно можно и все, вот только вес страницы станет не прилично большим. Неужели нет способа решить проблему по другому?
...
Рейтинг: 0 / 0
xml xsl и эскейп последовательности
    #37173559
rustam_frm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел решение да боли простое, но скорее это для знатоков PHP. Вместо $domXsl->loadXML($xslProgram) использовать $domXsl->loadHTML($xslProgram);
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / xml xsl и эскейп последовательности
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]