>백엔드 개발 >PHP 튜토리얼 >PHP는 utf-8 형식의 문자열을 가로챕니다.

PHP는 utf-8 형식의 문자열을 가로챕니다.

墨辰丷
墨辰丷원래의
2018-05-31 09:49:221618검색

이 글에서는 주로 utf-8 형식의 PHP 가로채기 문자열에 대한 관련 정보를 소개하고 예제 코드가 첨부되어 있습니다. 도움이 필요한 친구들은

php-8 형식의 문자열 가로채기

php를 참조하세요. 문자열을 가로채기 위해. 영어 문자는 1바이트, 한자는 2바이트를 차지합니다. 그러나 GBK 인코딩에 비해 한자는 2바이트를 차지합니다. 그러나 국제적으로 널리 사용되는 UTF8 인코딩에서는 한자 하나가 3바이트를 차지합니다. 이 기사에서는 UTF-8 형식 문자열을 가로채는 PHP 함수를 소개합니다.

예:

function truncate_utf8_string($string, $length, $etc = '...') {
 $result = '';
 $string = html_entity_decode ( trim ( strip_tags ( $string ) ), ENT_QUOTES, 'UTF-8' );
 $strlen = strlen ( $string );
 for($i = 0; (($i < $strlen) && ($length > 0)); $i ++) {
 if ($number = strpos ( str_pad ( decbin ( ord ( substr ( $string, $i, 1 ) ) ), 8, &#39;0&#39;, STR_PAD_LEFT ), &#39;0&#39; )) {
  if ($length < 1.0) {
  break;
  }
  $result .= substr ( $string, $i, $number );
  $length -= 1.0;
  $i += $number - 1;
 } else {
  $result .= substr ( $string, $i, 1 );
  $length -= 0.5;
 }
 }
 $result = htmlspecialchars ( $result, ENT_QUOTES, &#39;UTF-8&#39; );
 if ($i < $strlen) {
 $result .= $etc;
 }
 return $result;
}

UTF-8 형식의 문자열을 가로채야 하는 경우 이 함수를 직접 호출하면 됩니다.

<?php
  $str="如果需要截取utf-8格式的字符串,直接调用这个函数即可。";
  echo truncate_utf8_string($str,10);//输出结果:如果需要截取utf-8格...
?>

위 내용은 이 글의 전체 내용이며, 모든 분들의 공부에 도움이 되었으면 좋겠습니다.


관련 권장 사항:

APP WeChat 결제 사례 분석의 PHP 구현

php마법 기능 및 마술 상수 사용 방법

PHP 매직 메소드 __call 및 __callStatic 사용 방법

위 내용은 PHP는 utf-8 형식의 문자열을 가로챕니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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