>  기사  >  백엔드 개발  >  substr PHP 왜곡 문제를 해결하는 방법

substr PHP 왜곡 문제를 해결하는 방법

藏色散人
藏色散人원래의
2020-11-01 15:02:022453검색

php substr 함수의 잘못된 코드는 중국어 UTF-8 인코딩으로 인해 각 중국어 문자가 3바이트를 차지하는 반면, GB2312는 2바이트를 차지하고, 영어는 1바이트를 차지하므로 가로채는 숫자가 부정확해 코드가 깨집니다. 해결책은 mb_substr Just 함수를 사용하는 것입니다.

substr PHP 왜곡 문제를 해결하는 방법

추천: "PHP Video Tutorial"

php는 깨진 문자열을 가로채는 문제를 해결합니다

problem

일상 개발에서 문자열 가로채기 기능이 자주 사용됩니다. 일반적으로 함수는 다음과 같습니다. substr(). 예는 다음과 같습니다.

<?php
$rest = substr ("abcdef", 1); // returns "bcdef"
$rest = substr ("abcdef", 1, 3); // returns "bcd"
?>

substr 함수를 사용할 때 한자는 문자가 깨지는 경향이 있습니다. 이는 중국어 UTF-8 인코딩에서 각 중국어 문자가 3바이트를 차지하는 반면 GB2312는 2바이트를 차지하고 영어는 1바이트를 차지하기 때문입니다. substr()은 중국어 문자를 갑자기 두 부분으로 "톱질"합니다. , 연결이 끊어진 문자가 함께 모여 하나의 단어를 형성하게 되므로 PHP substr 중국어 문자가 깨져 나타납니다.

해결책

mb_substr() 함수를 사용할 수 있습니다. 예는 다음과 같습니다.

echo mb_substr("php中文字符encode",0,4,"utf-8");

위 내용은 substr PHP 왜곡 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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