이 글은 주로 PHP에서 중국어 문자열을 가로채는 기능을 소개합니다. utf-8과 gb2312 인코딩 사이의 변환 문제에 주의하세요. 도움이 필요한 친구들이 참고할 수 있습니다. to it
이 글의 예제는 PHP에서 중국어 문자열을 가로채는 기능을 설명합니다. 구체적인 구현 방법은 다음과 같습니다.
코드는 다음과 같습니다.
<?php //中文字符串截取 function substr_zh($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))."..."; //array_slice()在数组中根据条件取出一段值,参数(数组,开始位置,[长度]) }else{ return join('',array_slice($t_string[0],$start,$sublen)); } }else{ $start = $start*2; $sublen = $sublen*2; $strlen = strlen($string); $tmpstr = ''; for($i=0;$i<$strlen;$i++){ if($i>$start && $i<($start+$sublen)){ if(ord(substr($string,$i,1))>129){ //ord():返回字符串第一个字符的ASCII值 //substr():返回字符串的一部分 $tmpstr .= substr($string,$i,2); }else{ $tmpstr .= substr($string,$i,1); } } if(ord(substr($string,$i,1))>129){ $i++; } if(strlen($tmpstr)<$strlen){ $tmpstr .= "..."; } } return $tmpstr; } } $string ="顶置车顶起困境檲上盯协押畏奇才趄肯困楞右脚可爱有"; echo substr_zh($string,10,0,'gb2312'); ?>
요약: 위는 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.
관련 권장 사항:
PHP js에서 경고()와 유사한 프롬프트 상자를 작성하는 방법
PHP에서 array_merge() 함수를 사용하여 병합하는 방법 두 개의 배열
위 내용은 PHP에서 중국어 문자열 함수를 가로채는 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!