Удаление специальных символов HTML из RSS-канала
При создании файлов RSS-канала удаление HTML-тегов с помощью функции PHP Strip_tags является обычной практикой. Однако этой функции часто не удается удалить специальные символы HTML-кода, такие как , & и ©.
Чтобы эффективно удалить эти символы, рассмотрите следующие варианты:
Вариант 1. Использование html_entity_decode
Вы можете использовать html_entity_decode для декодирования этих символов обратно в их исходную форму.
$decodedContent = html_entity_decode($originalContent);
Вариант 2. Использование preg_replace
В качестве альтернативы вы можете использовать preg_replace с регулярным выражением для прямого удаления символов:
$cleanContent = preg_replace("/&#?[a-z0-9] ;/i","",$originalContent);
Этот шаблон соответствует специальным символам HTML, представленным в виде числовых объектов ( ; например) или именованные объекты ( ).
Альтернативный шаблон
Чтобы повысить точность замены, рассмотрите возможность использования следующего модифицированного шаблона, как предложено Джакко:
$cleanContent = preg_replace("/&#?[a-z0-9]{2,8};/i","",$originalContent);
Этот шаблон ограничивает замену объектами длиной от 2 до 8 символов, что снижает риск непреднамеренных замен.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3