帝国cms过滤内容里面html字符简单的方法代码

时间:2023年08月21日

/

来源:网络

/

编辑:佚名

在帝国cms制作模板的时候有一些地方可能要用到新闻内容里面的数据或者其它一些带有html内容的数据,如何去过滤掉这些内容中的html字符代码呢?
一般用到的地方是列表页调用新闻的正文,但是不要正文里面的Html代码,而帝国本身是没有这个过滤html代码的函数的,所以这个时候就要自己来写一个函数支持了。
将以下代码放到:/e/class/userfun.php (二次开发接口文件) 第二行开始里面就行了。
代码如下:
//去除HTML标记
function DELHTML($string){
  $string = preg_replace("'<script[^>]*?>.*?</script>'si", "", $string);//去掉javascript
  $string = preg_replace("'<[\/\!]*?[^<>]*?>'si", "", $string);         //去掉HTML标记
  $string = preg_replace("'([\r\n])[\s]+'", "", $string);               //去掉空白字符
  $string = mb_ereg_replace('^( | )+', '', $string);
  $string = mb_ereg_replace('( | )+$', '', $string);
  $string = preg_replace("'&(quot|#34);'i", "", $string);               //替换HTML实体
  $string = preg_replace("'&(amp|#38);'i", "", $string);
  $string = preg_replace("'&(lt|#60);'i", "", $string);
  $string = preg_replace("'&(gt|#62);'i", "", $string);
  $string = preg_replace("'&(nbsp|#160);'i", "", $string);
  return $string;
}
<?=DELHTML($navinfo['你的字段'])?>
在使用的地方调用这个函数就可以正常使用,这样处理起来就非常的简单了。
猜你需要

豫ICP备2021026617号-1  豫公网安备:41172602000185   Copyright © 2021-2028 www.78moban.com/ All Rights Reserved

本站作品均来自互联网,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系 1565229909#qq.com(把#改成@),我们将立即处理。