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


Posted in PHP onJune 25, 2019

本文实例讲述了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、如需显示小于号,我们必须这样写:< 或 <使用实体名而不是数字的好处是,名称易于记忆。不过坏处是,浏览器也许并不支持所有实体名称(对实体数字的支持却很好)。

示例:

<?php
$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 实体:

& 解码成 & (和号)
" 解码成 " (双引号)
' 解码成 ' (单引号)
< 解码成 < (小于)
> 解码成 > (大于)

示例:

<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars_decode($str);
?>

输出:

This is some <b>bold</b> text..

PHP 相关文章推荐
IIS环境下快速安装、配置和调试PHP5.2.0
Dec 17 PHP
php object转数组示例
Jan 15 PHP
最常用的8款PHP调试工具
Jul 06 PHP
php json_encode()函数返回json数据实例代码
Oct 10 PHP
PHP类的反射用法实例
Nov 03 PHP
php中in_array函数用法探究
Nov 25 PHP
thinkphp数据查询和遍历数组实例
Nov 28 PHP
php实现插入排序
Mar 29 PHP
iOS+PHP注册登录系统 PHP部分(上)
Dec 26 PHP
PHP简单实现解析xml为数组的方法
May 02 PHP
php设计模式之工厂模式用法经典实例分析
Sep 20 PHP
PHP SESSION跨页面传递失败解决方案
Dec 11 PHP
Laravel向公共模板赋值方法总结
Jun 25 #PHP
php常用字符串长度函数strlen()与mb_strlen()用法实例分析
Jun 25 #PHP
PHP中遍历数组的三种常用方法实例分析
Jun 24 #PHP
php字符串过滤strip_tags()函数用法实例分析
Jun 24 #PHP
提高Laravel应用性能方法详解
Jun 24 #PHP
PHP二维索引数组的遍历实例分析【2种方式】
Jun 24 #PHP
PHP中的self关键字详解
Jun 23 #PHP
You might like
php empty函数判断mysql表单是否为空
2010/04/12 PHP
利用PHP命令行模式采集股票趋势信息
2016/08/09 PHP
PHP生成图片缩略图类示例
2017/01/12 PHP
PHP常见的序列化与反序列化操作实例分析
2019/10/28 PHP
jquery简单体验
2007/01/10 Javascript
JS验证身份证有效性示例
2013/10/11 Javascript
JS获取下拉列表所选中的TEXT和Value的实现代码
2014/01/11 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
2014/07/18 Javascript
Javascript自执行匿名函数(function() { })()的原理浅析
2016/05/15 Javascript
利用Vue.js指令实现全选功能
2016/09/08 Javascript
js微信支付实现代码
2016/12/22 Javascript
基于JavaScript实现的插入排序算法分析
2017/04/14 Javascript
vue-cli+webpack项目 修改项目名称的方法
2018/02/28 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
2020/04/11 Javascript
在VUE中使用lodash的debounce和throttle操作
2020/11/09 Javascript
Javascript实现关闭广告效果
2021/01/29 Javascript
github配置使用指南
2014/11/18 Python
使用python实现正则匹配检索远端FTP目录下的文件
2015/03/25 Python
用python生成1000个txt文件的方法
2018/10/25 Python
pandas ix &amp;iloc &amp;loc的区别
2019/01/10 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
Python高级特性——详解多维数组切片(Slice)
2019/11/26 Python
使用python去除图片白色像素的实例
2019/12/12 Python
Python通过format函数格式化显示值
2020/10/17 Python
获取邓白氏信用报告:Dun & Bradstreet
2019/01/22 全球购物
科颜氏法国官网:Kiehl’s法国
2019/08/20 全球购物
开业庆典答谢词
2014/01/18 职场文书
物流管理专业毕业生自荐信
2014/03/04 职场文书
2014年国庆节演讲稿
2014/09/02 职场文书
大学生实习证明范本
2014/09/19 职场文书
乡镇党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
社保缴纳证明申请书
2014/11/03 职场文书
酒桌上的开场白
2015/06/01 职场文书
2016中秋节问候语
2015/11/11 职场文书