博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php过滤字段htmlentities,htmlspecialchars,strip_tags
阅读量:5819 次
发布时间:2019-06-18

本文共 890 字,大约阅读时间需要 2 分钟。

1.strip_tags:过滤html标签比如<a> <html> <script>

如:

$str = '文字内容'; echo strip_tags($str); 输出结果: 文字内容alert(213)
去掉了 标签 应用场景:去掉表单提交内容的html标签 2.htmlentities,htmlspecialchars 过滤字段的各种特殊符号 区别一:
htmlentities对欧元符号'€'转义,美元符号'$' 不转义
htmlspecialchars对欧元符号'€'不转义,美元符号'$' 不转义 区别二:
$str = '测试页面';echo 'htmlentities指定GB2312编码:'.htmlentities($str,ENT_COMPAT,"GB2312").'';echo 'htmlentities未指定编码:'.htmlentities($str).'';$str = '测试页面';echo htmlspecialchars($str).'';

 

输出:

htmlentities指定GB2312编码:测试页面htmlentities未指定编码:²âÊÔÒ³Ãæ测试页面

 

测试

$str='测试';        $transstr = htmlspecialchars($str) ;        echo $transstr . "
"; echo htmlspecialchars_decode($transstr);

 

总结:htmlentities会转化所有的html代码,连同里面的它无法识别的中文字符也给转化了(当有中文的时候会变成乱码)。htmlspecialchars 只会转化部分代码(如:& ' " < 和 > )

结论:有中文的时候用htmlspecialchars,使用htmlentities 必须要 htmlentities($str, ENT_COMPAT, 'gb2312'); strip_tags防止<a href> <script>alert(1)</script> html标签提交

 

 
 

转载地址:http://slwdx.baihongyu.com/

你可能感兴趣的文章
队列1--周末舞会
查看>>
zookeeper集群的搭建
查看>>
SEO之HTML标签
查看>>
多少秒后跳转到指定页面
查看>>
Android跨应用间的数据传输
查看>>
关于团队项目的一些思考和理解
查看>>
新手正式入驻博客园
查看>>
[迷宫中的算法实践]迷宫生成算法——Prim算法
查看>>
Spring Boot(二):Web 综合开发
查看>>
MySQL
查看>>
进程管理(一)
查看>>
C++中this的用法
查看>>
【枚举】bzoj3391 [Usaco2004 Dec]Tree Cutting网络破坏
查看>>
【计算几何】【圆反演】计蒜客17314 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 G. Finding the Radius for an Inserted Circle...
查看>>
[转载]eclipse自动同步插件filesync的使用
查看>>
ubuntu直接删除文件而不是移动到回收站
查看>>
Virtual Reality: Immersive Yourself In Your 3D Mockup
查看>>
SSO解决session共享的几种方案
查看>>
volatile与synchronized的区别
查看>>
leetcode 73: Longest Palindromic Substring
查看>>