Я создаю агрегатор/читатель RSS-каналов на PHP. Поскольку RSS — это, по сути, пользовательский контент, я не хочу полагаться на то, что содержимое канала будет безопасным.
Мне нужен совет по очистке содержимого канала для хранения и отображения на устройствах пользователя. В настоящее время я использую htmlentities(feed_content)
для экранирования всех символов, но это не работает правильно, поскольку UTF-8 кодирует символы, которые не могут быть декодированы обратно в Javascript (которые я использую для построения внешнего интерфейса).
- Original: "Soundtrack: Dinosaur Jr. - Don’t Pretend You Didn’t Know I hadn’t thought much..."
- After htmlentities: "Copyright-Infringing Tweets Will Now Be “Withdrawn” Instead of “Disappeared..."
- After JS decodeURI: "Copyright-Infringing Tweets Will Now Be “Withdrawn” Instead of “Disappeared..."
Если я удалю htmlentities выше, текст будет отображаться правильно. Но я не уверен, что это правильный способ обеспечить очистку данных.