博客
关于我
强烈建议你试试无所不能的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/

你可能感兴趣的文章
linux 启动oracle
查看>>
LOGGING 、FORCE LOGGING 、NOLOGGING、归档模
查看>>
《写给大忙人看的java se 8》笔记
查看>>
我的友情链接
查看>>
Linux学习:Linux基础命令集(1)
查看>>
倒计时:计算时间差
查看>>
Linux/windows P2V VMWare ESXi
查看>>
IEC61850时间质量TimeQuality各个比特位的含义
查看>>
Windows XP倒计时到底意味着什么?
查看>>
tomcat一步步实现反向代理、负载均衡、内存复制
查看>>
CentOS忘记root用户密码,进入单用户模式修改密码
查看>>
运维工程师在干什么学些什么?【致菜鸟】
查看>>
将私有Android工程迁移至GitHub
查看>>
Linux中iptables详解
查看>>
java中回调函数以及关于包装类的Demo
查看>>
***常用兵器之扫描篇(下)
查看>>
maven异常:missing artifact jdk.tools:jar:1.6
查看>>
终端安全求生指南(五)-——日志管理
查看>>
我的友情链接
查看>>
lduan Exchange 2013 介绍(一)
查看>>