• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    php中html_entity_decode实现HTML实体转义

    最近遇到一个问题,数据中包含中文引号,结果被转义存储到数据库,取数据的时候用了htmlspecialchars_decode把实体转义回去,结果发现并没有生效,看了一下htmlspecialchars_decode只支持5个指定的实体转换,其他的[我遇到的是中文引号ldrquo;]

    因此发现了html_entity_decode可以把所有的实体转义回去~

    另外,如果你在浏览器中测试,会发现是转义回去的,这是因为浏览器自动给处理了。实际上是没有转回去的,可以到命令行试试哦~~

    html_entity_decode:把所有的html实体转换为原来的字符

    与htmlentities() 相反

    更准确地说,这个函数解码所有的实体(包括所有的数字实体):a)对于所选择的文档类型必须是有效的 - 即对于XML,这个函数不解码可能在某些DTD中定义的命名实体 - 以及b) 其中的字符或字符位于与所选编码相关联的编码字符集中并且在所选文档类型中被允许。 所有其他实体保持原样。

    htmlspecialchars_decode:将特殊的 HTML 实体转换回普通字符

    此函数的作用和 htmlspecialchars() 刚好相反。它将特殊的HTML实体转换回普通字符。

    被转换的实体有: , " (没有设置ENT_NOQUOTES 时), ' (设置了 ENT_QUOTES 时), 以及>。

    所以并不能把不包含在以上5个的其他转换回去。

    实例

    把 HTML 实体转换为字符:

    ?php
    $str = "lt;copy; W3CSccedil;hdeg;deg;brvbar;sect;gt;";
    echo html_entity_decode($str);
    ?>
    

    上面代码的 HTML 输出如下(查看源代码):

    !DOCTYPE html>
    html>
    body>
    © W3CSçh°°¦§>
    /body>
    /html>
    

    上面代码的浏览器输出如下:

    © W3CSçh°°¦§>

    您可能感兴趣的文章:
    • IdentityServer4 QuckStart 授权与自定义Claims的问题
    • IdentityServer4实现.Net Core API接口权限认证(快速入门)
    • JPA中EntityListeners注解的使用详解
    • EF(EntityFramework) 插入或更新数据报错的解决方法
    • 详解ASP.NET中Identity的身份验证代码
    • c# 使用Entity Framework操作Access数据库的示例
    • Idea自动生成Entity实现过程详解
    上一篇:php处理多图上传压缩代码功能
    下一篇:PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    php中html_entity_decode实现HTML实体转义 php,中,html,entity,decode,实现,