设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
php过滤输入操作之htmlentities与htmlspecialchars用法 ...
返回列表
查看:
1937
|
回复:
0
php过滤输入操作之htmlentities与htmlspecialchars用法分析
[复制链接]
bewin83
当前离线
积分
7520
2500
主题
2513
帖子
7520
积分
论坛元老
论坛元老, 积分 7520, 距离下一级还需 9992479 积分
论坛元老, 积分 7520, 距离下一级还需 9992479 积分
积分
7520
发消息
电梯直达
楼主
发表于 2018-2-14 05:28:05
|
只看该作者
|
倒序浏览
|
阅读模式
本文实例讲述了php过滤输入操作htmlentities与htmlspecialchars用法。分享给大家供大家参考,具体如下:
过滤输入 (即来自所列数据源中的任何数据)是指,转义或删除不安全的字符。在数据到达应用的存储层之前,一定要过滤输入数据。这是第一道防线。假如网站的评论表单接收html,默认情况下访客可以毫无阻拦地在评论中加入恶意的
上面例子。如果不过滤这个评论,恶意代码会存入数据库,然后再网站的标记中渲染。
HTML
我们可以使用htmlentities或者htmlspecialchars函数来过滤html,把特殊字符转换成对应的html实体。
htmlentities这个函数转换所有含有对应“html实体”的特殊字符,比如货币表示符号欧元英镑等、版权符号等,htmlspecialchars 只是把某些特殊的字符转义了, & " '
这2个函数比较傻,默认是不会转义单引号的
$str='
\'测试页面\'
';
//并没有转义单引号
echo $str;
echo "".PHP_EOL;
echo htmlentities($str);
echo "".PHP_EOL;
echo htmlspecialchars($str);
需要设置第2个参数 ENT_QUOTES,具体可以看php手册
echo htmlentities($str,ENT_QUOTES,'UTF-8'); //单引号也转义
echo "".PHP_EOL;
echo htmlspecialchars($str,ENT_QUOTES,'UTF-8');//单引号也转义
以上例子并不能区别出htmlentities和htmlspecialchars ,下面换上一些特殊的字符,如欧元等。htmlentities将会对此转义,htmlspecialchars却不会
echo htmlentities('? "').PHP_EOL;
echo "".PHP_EOL;
echo htmlspecialchars('? "').PHP_EOL; //?没有转义
结论:
做一般表单提交的时候完全可以用strip_tags去除html标签,如果涉及到富文本编辑器需要保留html标签,可以用htmlspecialchars对提交数据进行过滤。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《
php程序设计安全教程
》、《
php安全过滤技巧总结
》、《
PHP运算与运算符用法总结
》、《
PHP网络编程技巧总结
》、《
PHP基本语法入门教程
》、《
php面向对象程序设计入门教程
》、《
php字符串(string)用法总结
》、《
php+mysql数据库操作入门教程
》及《
php常见数据库操作技巧汇总
》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:
php htmlentities和htmlspecialchars 的区别
php 字符过滤类,用于过滤各类用户输入的数据
php htmlspecialchars加强版
php HtmlReplace输入过滤安全函数
PHP开发不能违背的安全规则 过滤用户输入
php 对输入信息的进行安全过滤的函数代码
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
php 去除html标记--strip_tags与htmlspecialchars的区别详解
php中filter函数验证、过滤用户输入的数据
PHP关于htmlspecialchars、strip_tags、addslashes的解释
php5.4以上版本GBK编码下htmlspecialchars输出为空问题解决方法汇总
php htmlentities()函数的定义和用法
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
用户反馈
客户端