从phpstring中删除所有的html标签

我想显示数据库条目的前110个字符。 目前相当容易:

<?php echo substr($row_get_Business['business_description'],0,110) . "..."; ?> 

但是,上面的条目中已经有客户端input的html代码。 所以它显示:

 <p class="Body1"><strong><span style="text-decoration: underline;">Ref no:</span></strong> 30001<strong></stro... 

显然没有好处。

我只是想删除所有的HTML代码,所以我需要从db条目中删除<和>之间的所有内容,然后显示前100个字符。

任何想法的人?

使用strip_tags

 $text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>'; echo strip_tags($text); //output Test paragraph. Other text <?php echo substr(strip_tags($row_get_Business['business_description']),0,110) . "..."; ?> 

使用PHP的strip_tags()函数 。

例如:

 $businessDesc = strip_tags($row_get_Business['business_description']); $businessDesc = substr($businessDesc, 0, 110); print($businessDesc); 

从内容中删除PHPstring中的所有HTML标记!

假设你有一个string包含锚点标记,并且你想要用内容去除这个标记,那么这个方法将会有帮助。

 $srting = '<a title="" href="/index.html"><b>Some Text</b></a> Lorem Ipsum is simply dummy text of the printing and typesetting industry.'; echo strip_tags_content($srting); function strip_tags_content($text) { return preg_replace('@<(\w+)\b.*?>.*?</\1>@si', '', $text); } 

输出:

Lorem Ipsum只是印刷和排版行业的虚拟文本。

使用这个正则expression式: /<[^<]+?>/g

 $val = preg_replace('/<[^<]+?>/g', ' ', $row_get_Business['business_description']); $businessDesc = substr(val,0,110); 

从你的例子应该停留: Ref no: 30001