详解PHP函数 strip_tags 处理字符串缺陷bug


Posted in PHP onJune 11, 2017

详解PHP函数 strip_tags 处理字符串缺陷bug

PHP 函数 strip_tags() 是一个常用函数,该函数可以剥去字符串中的 HTML、XML 以及 PHP 的标签。极大方便了对字符串的操作,但是 strip_tags() 函数存在缺陷bug,由于 strip_tags() 无法验证 HTML 不完整或者破损标签将导致更多的数据被删除。

例子:

$str = '<div>string</div>string<string<b>hello</b><div>string</div>';
 
echo strip_tags($str, '<div>');

输出:

<div>string</div>string

通过 strip_tags 函数过滤 <b> 标签,其实我希望得到下面这个结果:

<div>string</div>string<stringhello<div>string</div>

导致我们未能得到所期望的结果,其实是因为字符串中第三个 string 左边那个尖括号,strip_tags 函数误删除了其他字符。

经过查找 PHP 相关文档发现 strip_tags 函数 有一个警告:由于 strip_tags() 无法实际验证 HTML,不完整或者破损标签将导致更多的数据被删除。

既然不能验证 HTML 标签完整性,遇到字符串中包含“<”或“>”导致误删字符串中其他字符。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
PHP音乐采集(部分代码)
Feb 14 PHP
Zend的MVC机制使用分析(二)
May 02 PHP
PHP错误和异长常处理总结
Mar 06 PHP
php简单分页类实现方法
Feb 26 PHP
php快速查找数据库中恶意代码的方法
Apr 01 PHP
使用PHP实现微信摇一摇周边红包
Jan 04 PHP
eclipse php wamp配置教程
Jun 30 PHP
浅谈PHP中try{}catch{}的使用方法
Dec 09 PHP
php获取当前url地址的方法小结
Jan 10 PHP
php面向对象之反射功能与用法分析
Mar 29 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 PHP
php模仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(中)
Jun 11 #PHP
PHP中error_reporting函数用法详细介绍
Jun 11 #PHP
详解PHP处理字符串类似indexof的方法函数
Jun 11 #PHP
PHP获取文件扩展名的方法实例总结
Jun 10 #PHP
PHP获取数组中单列值的方法
Jun 10 #PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
Jun 10 #PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
Jun 10 #PHP
You might like
重新认识php array_merge函数
2014/08/31 PHP
学习php设计模式 php实现工厂模式(factory)
2015/12/07 PHP
微信支付开发维权通知实例
2016/07/12 PHP
PHP xpath()函数讲解
2019/02/11 PHP
PHP使用PDO操作sqlite数据库应用案例
2019/03/07 PHP
javascript预览上传图片发现的问题的解决方法
2010/11/25 Javascript
js判断FCKeditor内容是否为空的两种形式
2013/05/14 Javascript
artdialog的图片/标题以及关闭按钮不显示的解决方法
2013/06/27 Javascript
详解JavaScript语言的基本语法要求
2015/11/20 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
2015/12/13 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
基于css3新属性transform及原生js实现鼠标拖动3d立方体旋转
2016/06/12 Javascript
js中获取时间new Date()的全面介绍
2016/06/20 Javascript
基于Vue2.X的路由和钩子函数详解
2018/02/09 Javascript
vue组件的写法汇总
2018/04/12 Javascript
AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
2018/04/21 Javascript
JS获取月的第几周和年的第几周实例代码
2018/12/05 Javascript
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[39:00]Optic vs VP 2018国际邀请赛淘汰赛BO3 第三场 8.24
2018/08/25 DOTA
python实现的简单FTP上传下载文件实例
2015/06/30 Python
Python查询IP地址归属完整代码
2017/06/21 Python
Python3内置模块pprint让打印比print更美观详解
2019/06/02 Python
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
在C中是否有模拟继承等面向对象程序设计特性的好方法
2012/05/22 面试题
机电工程专业应届生求职信
2013/10/03 职场文书
新学期校长寄语
2014/01/18 职场文书
庆七一活动方案
2014/01/25 职场文书
大二法学专业职业生涯规划范文
2014/02/12 职场文书
会计与出纳自荐书范文
2014/03/16 职场文书
信访工作汇报材料
2014/10/27 职场文书
苏州园林导游词
2015/02/03 职场文书
幼儿园中秋节活动总结
2015/03/23 职场文书
2015年技术工作总结范文
2015/04/20 职场文书
教师节作文之小学四年级
2019/09/03 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
js之ajax文件上传
2021/05/13 Javascript