utf-8 문자열을 주어진 바이트로 자르기

by 조쉬 posted Apr 29, 2019
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
function getSubstring($str, $length)
{
    $str = trim($str);

    if (strlen($str) <= $length)
        return $str;

    $strArr = preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);
    $cutStr = '';

    foreach ($strArr as $s) {
        $len1 = strlen($s);
        $len2 = strlen($cutStr) + $len1;

        if ($len2 > $length)
            break;
        else
            $cutStr .= $s;
    }

    return $cutStr;
}


getSubstring 함수는 주어진 문자열을 주어진 길이(byte) 만큼 자른 후 리턴한다. 만약 주어진 길이만큼 자를 때 마지막 문자가 정상적인 문자가 아닌 경우는 그 전 문자까지 리턴한다.