리자

UTF-8 한글 TEST

$str = "한글 abc 123 사랑합니다.";

$str = preg_replace("#\r|\n#", " ", trim($str));
$len = strlen($str);

$i = 0;
$k = 0;
while ($i < $len) {
    if (preg_match('/^[\x20]/xs', $str)) {
        echo $str[0];
        $n = 1;
    }
    else if (preg_match('/^[\x30-\x39\x41-\x5a\x61-\x7a]/xs', $str)) {
        echo $str[0];
        $n = 1;
    }
    else if (preg_match('/^[\xc0-\\xdf][\x80-\xbf]/xs', $str)) {
        echo $str[0].$str[1];
        $n = 2;
    }
    else if (preg_match('/^[\xe0-\\xef][\x80-\xbf]{2}/xs', $str)) {
        echo $str[0].$str[1].$str[2];
        $n = 3;
    }
    else if (preg_match('/^[\xf0-\\xf7][\x80-\xbf]{3}/xs', $str)) {
        echo $str[0].$str[1].$str[2].$str[3];
        $n = 4;
    }
    else {
        $n = 1;
    }

    $str = substr($str, $n);
    $i += $n;

    //echo $i; echo "<br>";

    if ($k++ > 10000) break;
}

[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
|

댓글 1개

http://kr.php.net/manual/en/function.utf8-encode.php

bytes bits representation
1 7 0bbbbbbb
2 11 110bbbbb 10bbbbbb
3 16 1110bbbb 10bbbbbb 10bbbbbb
4 21 11110bbb 10bbbbbb 10bbbbbb 10bbbbbb

예를 들어 3바이트(한글 포함) UTF-8 의 경우

E0-EF 에 포함되고 뒤 이은 2바이트가 80-BF 에 포함되면 UTF-8 한글임
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
15년 전 조회 764
15년 전 조회 1,201
15년 전 조회 746
15년 전 조회 2,914
15년 전 조회 1,293
15년 전 조회 1,323
15년 전 조회 1,334
15년 전 조회 1,392
15년 전 조회 1,002
15년 전 조회 1,761
15년 전 조회 1,288
15년 전 조회 875
15년 전 조회 2,732
15년 전 조회 1,117
15년 전 조회 1,320
15년 전 조회 1,122
15년 전 조회 1,967
15년 전 조회 1,980
15년 전 조회 1,633
15년 전 조회 990
15년 전 조회 1,222
15년 전 조회 921
15년 전 조회 865
15년 전 조회 1,119
15년 전 조회 2,473
15년 전 조회 2,504
15년 전 조회 1,480
15년 전 조회 1,020
15년 전 조회 1,175
15년 전 조회 1,183
15년 전 조회 1,047
15년 전 조회 947
15년 전 조회 876
15년 전 조회 1,238
15년 전 조회 1,187
15년 전 조회 933
15년 전 조회 912
15년 전 조회 1,083
15년 전 조회 1,546
15년 전 조회 1,079
15년 전 조회 1,406
15년 전 조회 1,244
15년 전 조회 1,916
15년 전 조회 2,980
15년 전 조회 2,313
15년 전 조회 912
15년 전 조회 1,922
15년 전 조회 2,106
15년 전 조회 1,408
15년 전 조회 1,382
15년 전 조회 2,652
15년 전 조회 2,539
15년 전 조회 5,519
15년 전 조회 1,490
15년 전 조회 4,250
15년 전 조회 1,382
15년 전 조회 1,682
15년 전 조회 1,646
15년 전 조회 1,634
15년 전 조회 1,134
15년 전 조회 1,387
15년 전 조회 1,521
15년 전 조회 1,434
15년 전 조회 2,156
15년 전 조회 1,299
15년 전 조회 1,359
15년 전 조회 912
15년 전 조회 1,012
15년 전 조회 983
15년 전 조회 944
15년 전 조회 892
15년 전 조회 957
15년 전 조회 1,097
15년 전 조회 1,111
15년 전 조회 2,635
15년 전 조회 963
15년 전 조회 1,615
15년 전 조회 1,488
15년 전 조회 1,613
15년 전 조회 1,311
15년 전 조회 1,804
15년 전 조회 623
15년 전 조회 1,114
15년 전 조회 1,077
15년 전 조회 2,866
15년 전 조회 3,186
15년 전 조회 1,860
15년 전 조회 1,371
15년 전 조회 1,988
15년 전 조회 1,492
15년 전 조회 1,090
15년 전 조회 3,787
15년 전 조회 1,436
15년 전 조회 1,525
15년 전 조회 2,755
15년 전 조회 1,449
15년 전 조회 4,179
15년 전 조회 2,389
15년 전 조회 3,173
15년 전 조회 1,783