您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

四个php中文字符串截取函数

2024/3/29 4:28:16发布8次查看
0xa0) {$tmpstr .= substr($str, $i, 2);$i++;} else$tmpstr .= substr($str, $i, 1);}return $tmpstr;}?>
复制代码
2、截取utf8编码的多字节字符串
//截取utf8字符串function utf8substr($str, $from, $len){return preg_replace('#^(?:[\x00-\x7f]|[\xc0-\xff][\x80-\xbf]+){0,'.$from.'}'.'((?:[\x00-\x7f]|[\xc0-\xff][\x80-\xbf]+){0,'.$len.'}).*#s','$1',$str);}?>
复制代码
3、utf-8、gb2312都支持的汉字截取函数
/*@utf-8、gb2312都支持的汉字截取函数@cut_str(字符串, 截取长度, 开始长度, 编码);@编码默认为 utf-8@开始长度默认为 0@http://bbs.it-home.org*/function cut_str($string, $sublen, $start = 0, $code = 'utf-8'){if($code == 'utf-8'){$pa = /[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/;preg_match_all($pa, $string, $t_string);if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start, $sublen))....;return join('', array_slice($t_string[0], $start, $sublen));}else{$start = $start*2;$sublen = $sublen*2;$strlen = strlen($string);$tmpstr = '';for($i=0; $i{if($i>=$start && $i{if(ord(substr($string, $i, 1))>129){$tmpstr.= substr($string, $i, 2);}else{$tmpstr.= substr($string, $i, 1);}}if(ord(substr($string, $i, 1))>129) $i++;}if(strlen($tmpstr)return $tmpstr;}}$str = abcd需要截取的字符串;echo cut_str($str, 8, 0, 'gb2312');?>
复制代码
4、bugfree 字符截取函数
/*** @package bugfree* @version $id: functionsmain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss exp $* @http://bbs.it-home.org** return part of a string(enhance the function substr())** @author chunsheng wang * @param string $string the string to cut.* @param int $length the length of returned string.* @param booble $append whether append ...: false|true* @return string the cutted string.*/function syssubstr($string,$length,$append = false){if (strlen($string) {return $string;}else{$i = 0;while ($i {$stringtmp = substr($string,$i,1);if ( ord($stringtmp) >=224 ){$stringtmp = substr($string,$i,3);$i = $i + 3;}elseif( ord($stringtmp) >=192 ){$stringtmp = substr($string,$i,2);$i = $i + 2;}else{$i = $i + 1;}$stringlast[] = $stringtmp;}$stringlast = implode(,$stringlast);if($append){$stringlast .= ...;}return $stringlast;}}$string = bbs.it-home.org 脚本学堂 专心为您;$length = 18;$append = false;echo syssubstr($string,$length,$append);?>
复制代码
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录