>  기사  >  백엔드 개발  >  PHP는 중국어 문자열-utf8 버전의 사용자 정의 가로채기를 구현합니다.

PHP는 중국어 문자열-utf8 버전의 사용자 정의 가로채기를 구현합니다.

墨辰丷
墨辰丷원래의
2018-05-25 11:58:061753검색

이 글에서는 주로 PHP에서 중국어 문자열을 사용자 정의하는 방법을 소개합니다. 이는 매우 좋은 참조 값을 가지고 있습니다.

우선, 참고 사항: 현재 많은 코드가 있습니다. 인터넷에 이런 문제가 있는데 복사해서 붙여넣는 경우가 많고, 제가 직접 연습해 본 적은 없으며, 아래의 코드는 제가 직접 작성한 코드입니다.

할 말이 많지 않습니다

/**
   * 该函数是对于utf8编码
   * @author 2582308253@qq.com
   * @param string $str
   * @param int $start
   * @param int $length
   * @return string
   * @copyright 2017年2月27日下午1:46:10
   */
  function gbsubstr2($str, $start, $length) {
    $length = abs($length);
    $strLen = strlen($str);
    $len = $start + $length;
    $newStr = '';
    for($i = $start; $i < $len && $i < $strLen; $i++) {
      if(ord(substr($str, $i, 1)) > 0xa0) {
        //utf8编码中一个汉字是占据3个字节的,对于其他的编码的字符串,中文占据的字节各有不同,自己需要去修改这个数a
        $newStr .= substr($str, $i, 3);//此处a=3;
        $i+=2;
        $len += 2; //截取了三个字节之后,截取字符串的终止偏移量也要随着每次汉字的截取增加a-1;
      } else {
        $newStr .= substr($str, $i, 1);
      }
    }
    return $newStr;
  }

위 내용은 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되길 바랍니다.


관련 권장사항:

php는 하나 이상의 무작위 문자열

php preg_match 매칭 문자열 길이 사례 분석

을 생성하는 방법을 구현합니다. PHP preg_match 매칭 상세 문자열 설명 length steps

위 내용은 PHP는 중국어 문자열-utf8 버전의 사용자 정의 가로채기를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.