浅谈htmlentities 、htmlspecialchars、addslashes的使用方法


Posted in PHP onDecember 09, 2016

1、html_entity_decode():把html实体转换为字符。

Eg:$str = "just atest & 'learn to use '";

echo html_entity_decode($str);

echo "<br />";

echo html_entity_decode($str,ENT_QUOTES);

echo "<br />";

echo html_entity_decode($str,ENT_NOQUOTES);

输出如下:

just a test & 'learn to use '
just a test & 'learn to use '
just a test & 'learn to use '

2、htmlentities():把字符转换为html实体。

Eg:$str = "just a test & 'learn to use'";

 echo htmlentities($str,ENT_COMPAT);

 echo "<br/>";

 echo htmlentities($str, ENT_QUOTES);

 echo "<br/>";

 echo htmlentities($str, ENT_NOQUOTES);

输出如下:

just a test & 'learn to use'
just a test & 'learn to use'
just a test & 'learn to use'

查看源代码如下:

just a test & 'learn to use'<br />

just a test & 'learn to use'<br />

just a test & 'learn to use'

3、addslashes():在指定的预定义字符前添加反斜杠

预定义字符包括:单引号(‘),双引号(“),反斜杠(\),NULL

默认情况下,PHP指令 magic_quotes_gpc 为 on,对所有的GET、POST 和COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数get_magic_quotes_gpc() 进行检测。

Eg:$str3="\ just a  '  \" test";

echoaddslashes($str3);

输出:

\\ just a \' \" test

4、stripslashes():删除由addslashes函数添加的反斜杠

Eg:$str4="\\ just a \'\" test";

echo stripslashes($str4);

输出:

just a ' " test

5、 htmlspecialchars():把一些预定义的字符转换为html实体。

预定义字符包括:& (和号) 成为&  
 " (双引号) 成为"
' (单引号) 成为'
< (小于) 成为<
> (大于) 成为>

Eg:$str5 = "just atest & 'learn to use'";

echo htmlspecialchars($str5, ENT_COMPAT);

echo "<br/>";

echo htmlspecialchars($str5, ENT_QUOTES);

echo "<br/>";

echo htmlspecialchars($str5, ENT_NOQUOTES);

输出:

just a test & 'learn to use'
just a test & 'learn to use'
just a test & 'learn to use'

查看源代码: 

just a test & 'learn to use'<br />
just a test & 'learn to use'<br />
just a test & 'learn to use'

6、 htmlspecialchars_decode():把一些预定义的html实体转换为字符。

会被解码的html实体包括:& 成为 &(和号)

 " 成为 " (双引号)
 ' 成为 ' (单引号)
 < 成为 < (小于)
 > 成为 > (大于)

Eg:$str6 = "just atest & 'learn to use'";

echo htmlspecialchars_decode($str6);

echo "<br />";

echo htmlspecialchars_decode($str6, ENT_QUOTES);

echo "<br />";

echo htmlspecialchars_decode($str6, ENT_NOQUOTES);

输出:

just a test & 'learn to use '
just a test & 'learn to use '
just a test & 'learn to use '

查看源代码:

just a test & 'learn to use '<br />

just a test & 'learn to use '<br />

just a test & 'learn to use '

防注入防web脚本综合使用:

$str= htmlspecialchars(addslashes($str));

$str= htmlspecialchars_decode(stripslashes($str));

以上这篇浅谈htmlentities 、htmlspecialchars、addslashes的使用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php 防止单引号,双引号在接受页面转义
Jul 10 PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
Jan 12 PHP
解析isset与is_null的区别
Aug 09 PHP
PHP JS Ip地址及域名格式检测代码
Sep 27 PHP
curl不使用文件存取cookie php使用curl获取cookie示例
Jan 26 PHP
使用PHP接受文件并获得其后缀名的方法
Aug 05 PHP
thinkPHP删除前弹出确认框的简单实现方法
May 16 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
PHP对称加密算法(DES/AES)类的实现代码
Nov 14 PHP
php 读写json文件及修改json的方法
Mar 07 PHP
PHP中cookie知识点学习
May 06 PHP
php微信公众号开发之答题连闯三关
Oct 20 PHP
浅谈PHP的数据库接口和技术
Dec 09 #PHP
magento后台无法登录解决办法的两种方法
Dec 09 #PHP
Zend Framework常用校验器详解
Dec 09 #PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
Dec 08 #PHP
Zend Framework入门教程之Zend_Session会话操作详解
Dec 08 #PHP
Zend Framework入门教程之Zend_Mail用法示例
Dec 08 #PHP
Zend Framework入门教程之Zend_Db数据库操作详解
Dec 08 #PHP
You might like
文章推荐系统(三)
2006/10/09 PHP
php除数取整示例
2014/04/24 PHP
PHP解码unicode编码的中文字符代码分享
2014/08/13 PHP
基于PHP实现假装商品限时抢购繁忙的效果
2015/10/16 PHP
js加解密 脚本解密
2008/02/22 Javascript
jQuery easyui datagrid动态查询数据实例讲解
2013/02/26 Javascript
jquery mobile动态添加元素之后不能正确渲染解决方法说明
2014/03/05 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
JS实现的简洁纵向滑动菜单(滑动门)效果
2015/10/19 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
利用javascript实现的三种图片放大镜效果实例(附源码)
2017/01/23 Javascript
深入理解Javascript中的作用域链和闭包
2017/04/25 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
详解vue填坑之解决部分浏览器不支持pushState方法
2018/07/12 Javascript
JavaScript工具库之Lodash详解
2019/06/15 Javascript
Layui数据表格跳转到指定页的实现方法
2019/09/05 Javascript
国内常用的js类库大全(CDN公共库)
2020/06/24 Javascript
Electron实现应用打包、自动升级过程解析
2020/07/07 Javascript
vant组件中 dialog的确认按钮的回调事件操作
2020/11/04 Javascript
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
python smtplib模块自动收发邮件功能(二)
2018/05/22 Python
python利用pandas将excel文件转换为txt文件的方法
2018/10/23 Python
python3.6 tkinter实现屏保小程序
2019/07/30 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
Pycharm配置PyQt5环境的教程
2020/04/02 Python
Python self用法详解
2020/11/28 Python
Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)
2020/12/14 Python
瑞典时尚耳机品牌:Urbanears
2017/07/26 全球购物
建筑工程自我鉴定
2013/10/18 职场文书
协议书样本
2014/04/23 职场文书
2014年大学生党员评议表自我评价
2014/09/20 职场文书
五好家庭申报材料
2014/12/20 职场文书
英语导游词
2015/02/13 职场文书
创先争优活动个人总结
2015/03/04 职场文书
iOS 16进一步确认,一共支持16款iPhone
2022/04/28 数码科技
MySQL数据库查询之多表查询总结
2022/08/05 MySQL