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