html预定义字符,php过滤htmlspecialchars() 函数实现把预定义的字符转换为 HTML 实体用法分析...

本文实例讲述了php过滤htmlspecialchars() 函数实现把预定义的字符转换为 html 实体用法。分享给大家供大家参考,具体如下:

这个函数非常重要,特别是在处理中文字符时,同时开发过程中往往需对写入数据库或读取数据库的数据进行处理。

htmlspecialchars(string,flags,character-set,double_encode)

1、string:必需。规定要转换的字符串。

2、flags:可选,规定如何处理引号、无效的编码以及使用哪种文档类型,如ent_compat、ent_quotes、ent_noquotes

3、character-set:可选,顾名思义字符集,默认utf-8,当然支持很多编码,这里不列举

4、double_encode:可选,一个规定了是否编码已存在的 html 实体的布尔值。

预定义的字符是:

1、& (和号)成为 &

2、” (双引号)成为 ”

3、' (单引号)成为 ‘

4、< (小于)成为 < > (大于)成为 >

那么什么是html实体?

1、 在 html 中,某些字符是预留的。

2、在 html 中不能使用小于号(),这是因为浏览器会误认为它们是标签,当然在html中还有其他实体

3、如果希望正确地显示预留字符,我们必须在html源代码中使用字符实体(character entities)。

4、如需显示小于号,我们必须这样写:< 或

示例:

$str = "apple & 'orange'";

echo htmlspecialchars($str, ent_compat); // 默认,仅编码双引号

//在右键查看源代码下结果为:apple & 'orange'

echo htmlspecialchars($str, ent_quotes); // 编码双引号和单引号

//在右键查看源代码下结果为:apple & 'orange'

echo htmlspecialchars($str, ent_noquotes); // 不编码任何引号

//在右键查看源代码下结果为:apple & 'orange'

//扩展阅读htmlspecialchars_decode() — 将特殊的 html 实体转换回普通字符

?>

补充:htmlspecialchars_decode() — 将特殊的 html 实体转换回普通字符

htmlspecialchars_decode() 函数把一些预定义的 html 实体转换为字符。

被解码的 html 实体:

& 解码成 & (和号)

" 解码成 " (双引号)

' 解码成 ' (单引号)

< 解码成 < (小于)

> 解码成 > (大于)

示例:

$str = "this is some bold text.";

echo htmlspecialchars_decode($str);

?>

输出:

this is some bold text..

ps:这里再为大家推荐几款相关在线工具供大家参考使用:

html/xml转义字符对照表:

在线html转义/反转义工具:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值