首頁 > php教程 > PHP源码 > 非常实用的支持中英文字符串截取函数

非常实用的支持中英文字符串截取函数

PHP中文网
發布: 2016-05-25 17:04:19
原創
1205 人瀏覽過

php代码

<?php
/**
 * @param string $string 需要截取的字符串
 * @param string $sublen 需要截取的长度(英文和中文都计算一个)
 * @param string $tags 需要保留的标签
 * @param string $endTag 最后截取位置标签(为保证不出现排版错乱,必须与$tags中第一个标签成对)
 * @return string
 */	
function _formatString($string,$sublen=100,$tags=&#39;&#39;,$endTag=&#39;&#39;){
	$string=stripslashes($string);
	$string=strip_tags($string,$tags);
	$string=str_ireplace("\t","",$string);
	$string=str_ireplace("\r\n","",$string);
	$string=str_ireplace("\r","",$string);
	$string=str_ireplace("\n","",$string);
	$string=str_ireplace(" ","",$string);
	$length=strlen($string);
	$tag_len=strlen($endTag);
	$new_str=mb_substr($string,0,$sublen,&#39;utf-8&#39;);
	$new_len=strlen($new_str);
	$end_len=strripos($new_str,$endTag)+$tag_len;	//最后一次出现标签位置再加上自身标签长度
	if($new_len!=$end_len){
		if($end_len==$tag_len){
			for($i=$new_len; $i <=$length; $i++){
				$str=substr($string,0,$i);
				if(strpos($str,$endTag)){
					$new_str=$str;
					break;
				}
			}
		}else{
			$new_str=substr($new_str,0,$end_len);
		}
	}
	return $new_str;
}
登入後複製

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板