php去除html标记的原生函数详解

yipeiwu_com5年前PHP代码库

     strip_tags 去掉 HTML 及 PHP 的标记。 语法: string strip_tags(string str); 传回值: 字串 函式种类: 资料处理 内容说明 本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错

strip_tags

  去掉 HTML 及 PHP 的标记。

  语法: string strip_tags(string str);

  传回值: 字串

  函式种类: 资料处理

  内容说明

  本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误。而本函式和 fgetss() 有着相同的功能。

htmlspecialchars

  将特殊字元转成 HTML 格式。

  语法: string htmlspecialchars(string string);

  传回值: 字串

  函式种类: 资料处理

  本函式将特殊字元转成 HTML 的字串格式 ( &....; )。最常用到的场合可能就是处理客户留言的留言版了。

  & (和) 转成 &
  " (双引号) 转成 "
  < (小于) 转成 <
  > (大于) 转成 >
  此函式只转换上面的特殊字元,并不会全部转换成 HTML 所定的 ASCII 转换。

使用范例 

复制代码 代码如下:

<?php 
$new = htmlspecialchars("<a href='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)

相关文章

PHP5.5在windows安装使用memcached服务端的方法

PHP5.5在windows安装使用memcached服务端的方法

  PHP5.5 在windows下安装 memcached 的方法   下载服务端资源   http://download.csdn.net/detail/zsjangel/71047...

PHP中将一个字符串部分字符用星号*替代隐藏的实现代码

有时候我们在开发中会遇到这样一种情况,例如:显示手机号我们需要将中间4位遮挡掉,一般使用“*”号代替,或是显示身份证号码是为了保护个人信息也同样需要遮挡掉4位,故可用到下列方式、代码进行...

php var_export与var_dump 输出的不同

问题发现在跟踪yratings_get_targets的时候,error_log(var_export(yblog_mspconfiginit("ratings"),true));老是打...

7种php基本排序实现方法

本文总结了一下常用的7种排序方法,并用php语言实现。 1、直接插入排序 /* * 直接插入排序,插入排序的思想是:当前插入位置之前的元素有序, * 若插入当前位置的元素比...

解决form中action属性后面?传递参数 获取不到的问题

如下所示: $p_id = $_REQUEST['p_id']; echo "<h1>您将更新商品编号为<span>$p_id</span>的商...