php去除html标记的原生函数详解
strip_tags去掉HTML及PHP的标记。语法:stringstrip_tags(stringstr);传回值:字串函式种类:资料处理内容说明本函式可去掉字串中包含的任何HTML及PHP的标记字串。若是字串的HTML及PHP标签原来就有错,例如少了大于的符号,则也会传回错
strip_tags
去掉HTML及PHP的标记。
语法:stringstrip_tags(stringstr);
传回值:字串
函式种类:资料处理
内容说明
本函式可去掉字串中包含的任何HTML及PHP的标记字串。若是字串的HTML及PHP标签原来就有错,例如少了大于的符号,则也会传回错误。而本函式和fgetss()有着相同的功能。
htmlspecialchars
将特殊字元转成HTML格式。
语法:stringhtmlspecialchars(stringstring);
传回值:字串
函式种类:资料处理
本函式将特殊字元转成HTML的字串格式(&....;)。最常用到的场合可能就是处理客户留言的留言版了。
&(和)转成&
"(双引号)转成"
<(小于)转成<
>(大于)转成>
此函式只转换上面的特殊字元,并不会全部转换成HTML所定的ASCII转换。
使用范例
<?php $new=htmlspecialchars("<ahref='test'>Test</a>",ENT_QUOTES); echo$new; ?>
附上一个本人项目中的应用实例吧:
在存入数据库的时候mysql数据库会将特殊符号进行转义,那么我们读取的时候会转义回来,而本人项目需要将n_info字段里的内容先去除HTML标签,然后再截取60字符的内容显示出来
本以为直接使用strip_tags()就可以实现,实际使用的时候才发现由于数据库里的内容是转义过的,strip_tags并不能识别,所以就需要先将特殊字符转义回来,
具体代码:_substr(strip_tags(htmlspecialchars_decode($value['n_info'])),0,60)