PHP substr, mb_substr 및 mb_strcut의 차이와 용법

PHP substr () 함수는 문자를 분할할 수 있지만, 분할할 문자가 중국어 문자를 포함하면 문제가 발생할 수 있습니다. 이때 mb_substr()/mb_strcut 이 함수, mb_substr()/mb_strcut의 사용법은substr()와 비슷하지만 mb_substr()/mb_strcut는 마지막으로 문자열의 인코딩을 설정하기 위해 매개 변수를 하나 더 추가해야 하지만 일반적인 서버는 php_를 열지 않았습니다mbstring.dll, php에 필요합니다.ini가 php_를mbstring.dll 열기.예를 들어:

<?php
echo mb_substr(' ^_^', 0, 7, 'utf-8');
?>
출력: 이렇게 하면 내 글자

<?php
echo mb_strcut(' ^_^', 0, 7, 'utf-8');
?>
출력: 위의 예에서 보듯이 mb_substr는 문자로 구분하고 mb_strcut는 바이트에 따라 문자를 나누지만 반 문자가 발생하지 않습니다. mbstring 함수 설명: php의 mbstring 확장 모듈은 여러 바이트 문자의 처리 능력을 제공합니다. 평소에 가장 자주 사용하는 것은 mbstring으로 여러 바이트의 중국어 문자를 나누면 반 문자의 상황을 피할 수 있습니다. php의 확장이기 때문에그것의 성능도 일부 사용자 정의 멀티바이트 절분 함수보다 약간 좋다.mbstring extension은 몇 가지 기능과 유사한 함수를 제공합니다, mb_substr 및 mb_strcut, 수첩에 있는 설명 좀 봐..

mb_substr
mb_substr() returns the portion of str specified by the start and length parameters.
mb_substr() performs multi-byte safe substr() operation based on number of characters. Position is counted from the beginning of str. First character's position is 0. Second character position is 1, and so on.
mb_strcut
mb_strcut() returns the portion of str specified by the start and length parameters.
mb_strcut() performs equivalent operation as mb_substr() with different method. If start position is multi-byte character's second byte or larger, it starts from first byte of multi-byte character.
It subtracts string from str that is shorter than length AND character that is not part of multi-byte string or not being middle of shift sequence.
다시 한 번 예를 들면, 각각 mb_substr 및 mb_strcut로 구분: PLAIN TEXTCODE:

<?php
$str = ' -www.webjx.com';
echo "mb_substr:" . mb_substr($str, 0, 6, 'utf-8');
echo "<br>";
echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
?>
출력 결과는 다음과 같습니다. mb_substr: 난 비교mb_strcut: 저는

좋은 웹페이지 즐겨찾기