리자

UTF-8 한글 TEST

· 2010-08-29 (일) 21:40:43 · 2745 · 1

$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 한글임
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
10-09-25 조회 2,702
10-09-19 조회 2,737
10-09-15 조회 2,740
10-09-15 조회 4,142
10-09-15 조회 3,363
10-09-15 조회 2,473
10-09-07 조회 3,585
10-08-27 조회 4,042
10-06-11 조회 4,200
10-05-31 조회 2,446
10-02-27 조회 4,984
10-02-09 조회 3,731
09-10-10 조회 7,323
09-03-19 조회 3,161
09-02-09 조회 3,438
09-02-09 조회 4,514
08-11-01 조회 2,891
08-09-29 조회 4,543
08-09-26 조회 3,503
08-09-26 조회 3,581
08-09-26 조회 2,717
08-09-26 조회 3,760
08-09-26 조회 3,481
08-09-26 조회 4,244
08-09-18 조회 3,556
08-09-09 조회 3,212
08-08-28 조회 2,751
08-07-06 조회 3,523
08-05-21 조회 4,681
08-05-13 조회 4,521
08-04-17 조회 4,896
08-02-19 조회 3,522
08-01-18 조회 3,829
08-01-10 조회 3,793
07-10-22 조회 3,624
07-10-09 조회 4,250
07-10-03 조회 3,490
07-07-06 조회 4,200
07-07-06 조회 4,413
07-07-06 조회 4,027
07-06-28 조회 3,546
07-06-05 조회 3,552
07-06-05 조회 4,096
07-05-30 조회 3,266
07-05-02 조회 3,675
07-04-15 조회 5,071
07-04-11 조회 3,618
07-04-05 조회 3,907
07-03-31 조회 3,141
07-03-31 조회 4,115
07-03-30 조회 3,720
07-03-24 조회 3,994
07-03-22 조회 3,646
07-03-12 조회 4,397
07-02-16 조회 3,254
07-02-14 조회 5,154
07-02-10 조회 3,979
07-02-09 조회 4,365
07-01-19 조회 4,028
07-01-16 조회 4,947
06-12-16 조회 5,820
06-11-30 조회 3,576
06-11-25 조회 3,676
06-10-15 조회 5,049
06-09-26 조회 5,293
06-09-26 조회 5,412
06-09-22 조회 4,246
06-09-21 조회 3,527
06-09-21 조회 3,614
06-09-02 조회 3,467
06-08-08 조회 5,102
06-07-20 조회 3,702
06-07-17 조회 3,328
06-07-13 조회 4,151
06-07-11 조회 3,445
06-07-11 조회 3,437
06-07-11 조회 3,814
06-06-29 조회 6,030
06-06-19 조회 6,437
06-06-02 조회 3,488
06-05-24 조회 4,979
06-05-14 조회 7,755
06-05-08 조회 3,867
06-02-02 조회 5,440
05-12-16 조회 4,487
05-12-05 조회 5,140
05-06-28 조회 4,087
05-04-11 조회 4,042
05-04-11 조회 4,234
05-04-11 조회 3,299
05-03-13 조회 3,204
05-03-12 조회 4,286
04-12-08 조회 7,764
04-12-01 조회 5,163
04-11-28 조회 3,322
04-11-28 조회 3,165
04-08-05 조회 5,590
04-08-05 조회 4,936
04-08-05 조회 5,534