包子

木森技术分享

路漫漫其修远兮,吾将上下而求索。

您现在的位置是:网站首页 > PHP

PHP过滤HTML标签截取部分内容

2022-04-19 15:44:29366

  使用函数

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

  注意开启 mbstring扩展 ,使用了 mb_substr()函数

//用strip_tags能把Html标签都去掉,然后调用truncate函数function truncate($string,$length,$append = true){
    $string = trim($string);
    $strlength = strlen($string);
    if ($length == 0 || $length >= $strlength){
        return $string;
    }elseif ($length < 0){
        $length = $strlength + $length;
        if ($length < 0)
        {
            $length = $strlength;
        }
    }
    if (function_exists('mb_substr')){
        $newstr = mb_substr($string, 0, $length,"UTF-8");
    }elseif (function_exists('iconv_substr')){
        $newstr = iconv_substr($string, 0, $length,"UTF-8");
    }else{
      for($i=0;$i<$length;$i++){
            $tempstring=substr($string,0,1);
            if(ord($tempstring)>127){
               $i++;
               if($i<$length){
                  $newstring[]=substr($string,0,3);
                  $string=substr($string,3);
               }
            }else{
               $newstring[]=substr($string,0,1);
               $string=substr($string,1);
            }
         }
      $newstr =join($newstring);
    }
    if ($append && $string != $newstr){
        $newstr .= '...';
    }
    return $newstr;}$str='<span>fdsfssdfa对手的防守啊打发士大夫阿斯蒂芬阿斯蒂芬df</span><a href="#">href</a>啊啊<img src="image/phone.png" alt="小明">';echo truncate(strip_tags($str),21); die;//输出结果 fdsfssdfa对手的防守啊打发士大夫阿...