php使用strip_tags()去除html标签仍有空白的解决方法

本文实例讲述了php使用strip_tags()去除html标签仍有空白的解决方法。分享给大家供大家参考,具体如下:

$subject = strip_tags($newsRs['content']);//去除html标签
$pattern = '/\s/';//去除空白
$content = preg_replace($pattern, '', $subject);
$seodata['articledescription'] = mb_substr($content, 0, 80);//截取80个汉字

注意:第一步中的strip_tags();只是把html标签用空格替换了

比如:

<p>
  张志斌张志斌张志斌张志斌张志斌张志
</p>
<p>
  <br />
</p>
<p>
  alsdkjf;laskjd;flasj;
</p>
<p>
  asdjfasjd;lkafsj;lfdkj
</p>
<p>
  aksdjfl;ak
</p>

strip_tags()处理后变为

  张志斌张志斌张志斌张志斌张志斌张志

  alsdkjf;laskjd;flasj;

  asdjfasjd;lkafsj;lfdkj

  aksdjfl;ak

这可能不是我们想要的,然后用正则替换将空白去掉就行了

最后结果:

张志斌张志斌张志斌张志斌张志斌张志alsdkjf;laskjd;flasj;asdjfasjd;lkafsj;lfdkjaksdjfl;ak

另外:\s表示空白字符,\S表示非空白字符(注意大小写,一般大小写表示相反的含义)

PS:这里再为大家提供2款比较实用的正则工具供大家参考:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php正则表达式用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数学运算技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP运算与运算符用法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

(0)

相关推荐

  • PHP关于htmlspecialchars、strip_tags、addslashes的解释

    PHP的htmlspecialchars.strip_tags.addslashes是网页程序开发中常见的函数,今天就来详细讲述这些函数的用法: 1.函数strip_tags:去掉 HTML 及 PHP 的标记 注意:本函数可去掉字串中包含的任何 HTML 及 PHP 的标记字串.若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误.而本函数和 fgetss() 有着相同的功能.fgetss是从文件中读取文件,并去掉html和php标记. 2.函数htmlspec

  • PHP strip_tags()去除HTML、XML以及PHP的标签介绍

    语法:strip_tags(string,allow);string必需,规定要检查的字符串.allow可选,规定允许的标签,这些标签不会被删除.注释:该函数始终会剥离HTML注释,这点无法通过allow参数改变. 实例:<?php    $str = "Hello <b><i>world</i></b>!";    echo strip_tags($str);    echo '<br />';    echo str

  • php 去除html标记--strip_tags与htmlspecialchars的区别详解

    strip_tags 去掉 HTML 及 PHP 的标记. 语法: string strip_tags(string str); 传回值: 字串 函式种类: 资料处理 内容说明 本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串.若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误.而本函式和 fgetss() 有着相同的功能. htmlspecialchars 将特殊字元转成 HTML 格式. 语法: string htmlspecialchars(

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

    详解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

  • PHP函数strip_tags的一个bug浅析

    PHP 函数 strip_tags 提供了从字符串中去除 HTML 和 PHP 标记的功能,该函数尝试返回给定的字符串 str 去除空字符.HTML 和 PHP 标记后的结果. 由于 strip_tags() 无法实际验证 HTML,不完整或者破损标签将导致更多的数据被删除. 比如下述代码: 复制代码 代码如下: <div>string</div>string<string<b>hello</b><div>string</div>

  • PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数

    strip_tags定义和用法 strip_tags() 函数剥去字符串中的 HTML.XML 以及 PHP 的标签. 注释:该函数始终会剥离 HTML 注释.这点无法通过 allow 参数改变. 注释:该函数是二进制安全的. 语法 strip_tags(string,allow) 参数 描述 string 必需.规定要检查的字符串. allow 可选.规定允许的标签.这些标签不会被删除. 技术细节 返回值: 返回被剥离的字符串. PHP 版本: 4+ 更新日志: 自 PHP 5.0 起,该函数

  • PHP strip_tags保留多个HTML标签的方法

    本文介绍了PHP strip_tags函数保留多个HTML标签的方法,可以使用第二个参数来设置不需要删除的标签,主要涉及到strip_tags的第二个参数 strip_tags 函数 语法 string strip_tags ( string str [, string allowable_tags] ) 返回一个去除了HTML标签的字符串:可以使用第二个参数来设置不需要删除的标签. 使用方法: 前提:假如现在有这样一个字符串, 复制代码 代码如下: $str = "<p>我来自&l

  • php使用strip_tags()去除html标签仍有空白的解决方法

    本文实例讲述了php使用strip_tags()去除html标签仍有空白的解决方法.分享给大家供大家参考,具体如下: $subject = strip_tags($newsRs['content']);//去除html标签 $pattern = '/\s/';//去除空白 $content = preg_replace($pattern, '', $subject); $seodata['articledescription'] = mb_substr($content, 0, 80);//截取

  • Mybatis传单个参数和<if>标签同时使用的问题及解决方法

    // Mapper.java EmerEvent selectByAlarmId(Integer alarmId); // Mapper.xml <select id="selectByAlarmId" resultMap="BaseResultMap" parameterType="java.lang.Integer"> select <include refid="Base_Column_List" /&

  • Vue.js 使用v-cloak后仍显示变量的解决方法

    Vue.js 使用v-cloak后仍显示变量的解决方法 v-cloak   这个指令是防止页面加载时出现 vuejs 的变量名而设计的,但有时候添加了这个指令仍会显示变量,这是怎么回事呢?. v-cloak 用法: HTML代码: <div v-cloak> {{ message }} </div> CSS代码: [v-cloak] { display: none; } 这样直至div内变量编译完毕后才会显示. 但有时添加完毕后仍有部分变量会显示,这是怎么回事呢?通过控制台查看,原

  • mybatis if标签判断不生效的解决方法

    实际需求 <if test="computationRule == '1'"> FROM app_sz_bbb a </if> <if test="computationRule == '2'"> FROM app_ccc a </if> 这种情况不生效, 原因:mybatis是用OGNL表达式来解析的,在OGNL的表达式中,'0'会被解析成字符,java是强类型的,char 和 一个string 会导致不等,所以if

  • centos配置ssh免密码登录后仍要输入密码的解决方法

    前言 在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手动启动,集群内服务器几台还好,要是像阿里1000台的云梯Hadoop集群的话,轨迹启动一次集群就得几个工程师一两天时间,是不是很恐怖.如果使用免密登录,主服务器就能通过程序执行启动脚步,自动帮我们将从服务器的应用启动.而这一切就是建立在ssh服务的免密码登录之上的.所以要学习集群部署,就必须了解linux的免密码登录. 第一步:在本机中创建秘钥 1.执行命令: ssh-keygen -t rsa -C "xx@qq.

  • smarty中先strip_tags过滤html标签后truncate截取文章运用

    strip_tags() 函数剥去 HTML.XML 以及 PHP 的标签. 复制代码 代码如下: <?php echo strip_tags("Hello <b>world!</b>"); ?> smarty中可以使用strip_tags去除html标签,包括在< >之间的任何内容. 例如: index.php: 复制代码 代码如下: $smarty = new Smarty; $smarty->assign('articleTi

  • js处理网页编辑器转义、去除转义、去除HTML标签的正则

    富文本编辑器生成的HTML标签,进行转义,然后写入数据库,防止脚本注入: function htmlEncode(value){ return $('<div/>').text(value).html(); } 1.从数据库拿出的转义后的HTML标签内容,先得去除转义,然后再去除HTML标签,是生成缩略文字. /*移除HTML标签代码*/ function removeHTMLTag(str) { str = str.replace(/<\/?[^>]*>/g,''); //

  • Java中正则表达式去除html标签

    Java中正则表达式去除html的标签,主要目的更精确的显示内容,比如前一段时间在做类似于博客中发布文章功能,当编辑器中输入内容后会将样式标签也传入后台并且保存数据库,但是在显示摘要的时候,比如显示正文的前50字作为摘要,那么这时需要去除所有html标签,然后在截取50字,所以就通过了Java正则表达式实现了如下方法,代码如下: 注:这是Java正则表达式去除html标签方法. private static final String regEx_script = "<script[^>

  • iOS实现去除html标签的方法汇总

    前言 我们在一些开发中,很有必要过滤掉用户输入的文本中的HTML标签以防范XSS攻击,本文将详细介绍关于iOS去除html标签的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 请求接口返回的数据里包含html标签,OC中去掉的方法之前做过,代码如下 -(NSString *)filterHTML:(NSString *)html{ NSScanner * scanner = [NSScanner scannerWithString:html]; NSString *

  • 去除HTML标签删除HTML示例代码

    复制代码 代码如下: /// <summary> /// 去除HTML标签 /// </summary> /// <param name="Htmlstring"></param> /// <returns></returns> public static string DeleteHTML(string Htmlstring) { //删除HTML Htmlstring = Regex.Replace(Htmls

随机推荐