php strp_trags()去除html标签仍有空白解决办法

2013年1月14日 15:39:23

$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表示非空白字符(注意大小写,一般大小写表示相反的含义)

原文地址:https://www.cnblogs.com/iLoveMyD/p/2859847.html