从 RSS Feed 中去除 HTML 特殊字符
创建 RSS feed 文件时,使用 PHP 的 strip_tags 函数删除 HTML 标签是常见做法。但是,此函数通常无法删除 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