У меня есть элемент XML, который имеет URL-адрес как один из его дочерних элементов, например:
http://maps.google.com/FortWorth&Texas,more+url;data
При анализе этого вопроса у меня возникают две проблемы:
1.) Символ ( & ) разбивает весь синтаксис, если не заменен на & amp (что нарушает URL)
2.) Запятая ( , ) пытается отправить мой синтаксический анализатор следующему ребенку, что приводит к неполному URL-адресу.
Что я могу сделать, чтобы исправить это?
Я использую Javascript и PHP.
Замена &
с помощью &
не должен нарушать URL. Вы не оставили?
Лучшее решение – вы должны обернуть это в тег CDATA:
<![CDATA[ http://maps.google.com/FortWorth&Texas,more+url;data ]]>
Что говорит синтаксическому анализатору XML рассматривать его как текст, а не анализировать &.
Существуют определенные символы, которые недействительны в XML – вам нужно «убежать» от них в XML-документе.
Эти символы и их «экранированные» версии:
> > < < & & ' ' " "