php如何去除字符串中html标签,空格,换行,提取纯文字

php去除html,空格,换行,提取纯文字的方法:

1、清除字符串两边的空格,代码为【$str = trim($str)】;

2、匹配html中的空格,代码为【$str = preg_replace("/ /","",$str)】。

php去除html,空格,换行,提取纯文字的方法:

方法一:

function DeleteHtml($str) 
{ 
    $str = trim($str); //清除字符串两边的空格
    $str = preg_replace("/\t/","",$str); //使用正则表达式替换内容,如:空格,换行,并将替换为空。
    $str = preg_replace("/\r\n/","",$str); 
    $str = preg_replace("/\r/","",$str); 
    $str = preg_replace("/\n/","",$str); 
    $str = preg_replace("/ /","",$str);
    $str = preg_replace("/  /","",$str);  //匹配html中的空格
    return trim($str); //返回字符串
}


    调用方法

    DeleteHtml($str);

    $str 为需要清除的页面字符串

方法二:

function DeleteHtml($str) 
{ 
    $str = trim($str); //清除字符串两边的空格
    $str = strip_tags($str,""); //利用php自带的函数清除html格式
    $str = preg_replace("/\t/","",$str); //使用正则表达式替换内容,如:空格,换行,并将替换为空。
    $str = preg_replace("/\r\n/","",$str); 
    $str = preg_replace("/\r/","",$str); 
    $str = preg_replace("/\n/","",$str); 
    $str = preg_replace("/ /","",$str);
    $str = preg_replace("/  /","",$str);  //匹配html中的空格
    return trim($str); //返回字符串
}

方法三:

去除字符串内部的空行:

$str = preg_replace("/(s*?r?ns*?)+/","n",$str);
去除全部的空行,包括内部和头尾:

$str = preg_replace('/($s*$)|(^s*^)/m', '',$str);

扩展1:

htmlspecialchars_decode() 函数把一些预定义的 HTML 实体转换为字符。

会被解码的 HTML 实体是:

  • & 解码成 & (和号)
  • " 解码成 " (双引号)
  • ' 解码成 ' (单引号)
  • &lt; 解码成 < (小于)
  • &gt; 解码成 > (大于)
实例

把预定义的 HTML 实体 "&lt;"(小于)和 "&gt;"(大于)转换为字符:

<?php
$str = "This is some &lt;b&gt;bold&lt;/b&gt; text.";
echo htmlspecialchars_decode($str);
?>


<!DOCTYPE html>
<html>
<body>
    This is some <b>bold</b> text.
</body>
</html>
上面代码的浏览器输出如下:

This is some bold text.

扩展2:

php自带的函数可以去除/删除字符串中的HTML标签/代码。

strip_tags(string,allow):函数剥去 HTML、XML 以及 PHP 的标签。

参数:string,必填,规定要检查的字符串;allow,选填,规定允许存在的标签,这些标签不会被删除。

$str = '郭碗瓢盆-<span style="color:#f00;">PHP</span>';

$str1 = strip_tags($str);          // 删除所有HTML标签

$str2 = strip_tags($str,'<span>'); // 保留 <span>标签

echo $str1; // 输出 郭碗瓢盆-PHP

echo $str2; // 样式不一样喔

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值