浅谈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安全配置
Oct 09 PHP
非常好的php目录导航文件代码
Oct 09 PHP
二招解决php乱码问题
Mar 25 PHP
PHP加密扩展库Mcrypt安装和实例
Nov 10 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
Sep 29 PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 PHP
PHP获取文件夹内文件数的方法
Mar 12 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
PHP递归创建多级目录
Nov 05 PHP
PHP实现的策略模式简单示例
Aug 25 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
Feb 07 PHP
详解Go与PHP的语法对比
May 29 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
php抓取页面与代码解析 推荐
2010/07/23 PHP
深入理解PHP原理之Session Gc的一个小概率Notice
2011/04/12 PHP
PHP中的闭包(匿名函数)浅析
2015/02/07 PHP
PHP实现更改hosts文件的方法示例
2017/08/08 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
FileUpload上传图片(图片不变形)
2010/08/05 Javascript
javascript返回顶部效果(自写代码)
2013/01/06 Javascript
JS实现动态给图片添加边框的方法
2015/04/01 Javascript
javascript中动态函数用法实例分析
2015/05/14 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
JavaScript实现向select下拉框中添加和删除元素的方法
2017/03/07 Javascript
浅析为什么a=&quot;abc&quot; 不等于 a=new String(&quot;abc&quot;)
2017/10/25 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
搭建一个nodejs脚手架的方法步骤
2019/06/28 NodeJs
Vue封装的组件全局注册并引用
2019/07/24 Javascript
bootstrap table实现iview固定列的效果实例代码详解
2019/09/30 Javascript
关于vue表单提交防双/多击的例子
2019/10/31 Javascript
[00:35]DOTA2上海特级锦标赛 MVP.Phx战队宣传片
2016/03/04 DOTA
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
2017/07/20 Python
解决Pycharm下面出现No R interpreter defined的问题
2018/10/29 Python
Django 实现 Websocket 广播、点对点发送消息的代码
2020/06/03 Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
2020/06/15 Python
使用K.function()调试keras操作
2020/06/17 Python
python反爬虫方法的优缺点分析
2020/11/25 Python
美国南部最大的家族百货公司:Belk
2017/01/30 全球购物
复古斯堪的纳维亚儿童服装:Baby go Retro
2017/09/09 全球购物
西班牙香水和化妆品连锁店:Druni
2019/05/05 全球购物
美国沙龙美发产品购物网站:Hair.com by L’Oreal
2020/11/09 全球购物
物流专业大学应届生求职信
2013/11/03 职场文书
书香校园活动方案
2014/02/28 职场文书
创先争优宣传标语
2014/10/08 职场文书
三潭印月的导游词
2015/02/12 职场文书
搭讪开场白台词大全
2015/05/28 职场文书
SQL写法--行行比较
2021/08/23 SQL Server