好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php中英文字符串截取函数(包括html) - php函数

php中英文字符串截取函数(包括html)

这里提供一款支持中文汉字与英文混合在一起的截取功能,包括对html标签等进来处理,下面我们来看看这款截取函数吧.

中英文字符串截取函数(包括html),实例代码如下:

function  get_word( $string ,  $length ,  $dot  =  '..' , $charset = 'gbk' ) {   if ( strlen ( $string ) <=  $length ) {   return   $string ;   }   $string  =  str_replace ( array ( ' ' , ' ' ,  '&' ,  '"' ,  '<' ,  '>' ),  array ( '' , '' , '&' ,  '"' ,  '<' ,  '>' ),  $string );   $strcut  =  '' ;   if ( strtolower ( $charset ) ==  'utf-8' ) {   $n  =  $tn  =  $noc  = 0;   while ( $n  <  strlen ( $string )) {   $t  = ord( $string [ $n ]);   if ( $t  == 9 ||  $t  == 10 || (32 <=  $t  &&  $t  <= 126)) {   $tn  = 1;  $n ++;  $noc ++;   }  elseif (194 <=  $t  &&  $t  <= 223) {   $tn  = 2;  $n  += 2;  $noc  += 2;   }  elseif (224 <=  $t  &&  $t  < 239) {   $tn  = 3;  $n  += 3;  $noc  += 2;   }  elseif (240 <=  $t  &&  $t  <= 247) {   $tn  = 4;  $n  += 4;  $noc  += 2;   }  elseif (248 <=  $t  &&  $t  <= 251) {   $tn  = 5;  $n  += 5;  $noc  += 2;   }  elseif ( $t  == 252 ||  $t  == 253) {   $tn  = 6;  $n  += 6;  $noc  += 2;   }  else  {   $n ++;   }   if ( $noc  >=  $length ) {   break ;   }   }   if ( $noc  >  $length ) {   $n  -=  $tn ;   }   $strcut  =  substr ( $string , 0,  $n );   }  else  {   for ( $i  = 0;  $i  <  $length ;  $i ++) {   $strcut  .= ord( $string [ $i ]) > 127 ?  $string [ $i ]. $string [++ $i ] :  $string [ $i ];   }   }   return   $strcut . $dot ;   }   $str  =  "欢迎 visit 简明 nowamagic" ;   $str_result  = get_word( $str , 12);   echo   $str_result ; 

查看更多关于php中英文字符串截取函数(包括html) - php函数的详细内容...

  阅读:41次