Ä¿ÇǴнº, ½Ã½ºÅÛ ¿£Áö´Ï¾îÀÇ ½°ÅÍ Ä¿ÇÇÇâÀÌ ³ª´Â *NIX
Ä¿ÇǴнº
½Ã½ºÅÛ/³×Æ®¿÷/º¸¾ÈÀ» ´Ù·ç´Â °÷
* HanIRCÀÇ #coffeenix ¹æ
[ Àåºñ ¹× ȸ¼± ÈÄ¿ø ]
HOME > ÇÁ·Î±×·¡¹Ö / °³¹ß > À¥ ÇÁ·Î±×·¡¹Ö / PHP µµ¿ò¸»
°Ë»ö : »çÀÌÆ® WHOIS À¥¼­¹ö Á¾·ù


  iconv() ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ¿© ÇÑ±Û ÂÉ°³±â ÀÛ¼ºÀÏ : 2003/12/26 18:43
 
  • ±Û¾´ÀÌ : ÂøÀÌ ( http://chak-yi.net/ )
  • Á¶È¸¼ö : 8046
          [ ÀÌÀüÈ­¸é / ¼öÁ¤ ]   ºñ¹Ð¹øÈ£ :     Àμâ¿ë È­¸é
      ¼Ò½ºÀÚü -> http://why-not.193d.com/ptext/test.php (»ç¶óÁ³À½ -_-)
    °£´ÜÇÑ ¸Þ¸ðÀå -> http://chak-yi.net/



    -----------------------------
    <?php



    $jamo = array(
    /*0    1      2     3    4      5     6     7     8     9 */
    "¤¡", "¤¢", "¤£", "¤¤", "¤¥", "¤¦", "¤§", "¤¨", "¤©", "¤ª", /*  0~9     */
    "¤«", "¤¬", "¤­", "¤®", "¤¯", "¤°", "¤±", "¤²", "¤³", "¤´", /* 10~19    */
    "¤µ", "¤¶", "¤·", "¤¸", "¤¹", "¤º", "¤»", "¤¼", "¤½", "¤¾", /* 20~29    */
    "¤¿", "¤À", "¤Á", "¤Â", "¤Ã", "¤Ä", "¤Å", "¤Æ", "¤Ç", "¤È", /* 30~39    */
    "¤É", "¤Ê", "¤Ë", "¤Ì", "¤Í", "¤Î", "¤Ï", "¤Ð", "¤Ñ", "¤Ò", /* 40~49    */
    "¤Ó", "¡¡");                                                /* 50~51    */

    $jo['cho']  = array(
    51, 51,
    /*  ¤¡ ¤¢ ¤¤ ¤§ ¤¨ ¤© ¤± ¤² ¤³ ¤µ   */
    0, 1, 3, 6, 7, 8,16,17,18,20,
    /*  ¤¶ ¤· ¤¸ ¤¹ ¤º ¤» ¤¼ ¤½ ¤¾      */
    21,22,23,24,25,26,27,28,29
    );

    $jo['jung'] = array(
    51, 51, 51,
    /*  ¤¿ ¤À ¤Á ¤Â ¤Ã      */
    30,31,32,33,34,
    51,51,
    /*  ¤Ä ¤Å ¤Æ ¤Ç ¤È ¤É   */
    35,36,37,38,39,40,
    51,51,
    /*  ¤Ê ¤Ë ¤Ì ¤Í ¤Î ¤Ï   */
    41,42,43,44,45,46,
    51,51,
    /*  ¤Ð ¤Ñ ¤Ò ¤Ó         */
    47,48,49,50
    );


    $jung_div = array(
    51, 51, 51, 51, 51, 51, 51, 51,
    51, 51, 51, 51, 51,
    51, //¤Ç,       0//¤Ç   38
    30, //¤Ç, ¤¿,   1//¤È   39
    31, //¤Ç, ¤À,   2//¤É   40
    51, 51,
    50, //¤Ç, ¤Ó,   3//¤Ê   41
    51, //¤Ë,       4//¤Ë   42
    51, //¤Ì,       5//¤Ì   43
    34, //¤Ì, ¤Ã,   6//¤Í   44
    35, //¤Ì, ¤Ä,   7//¤Î   45
    50, //¤Ì, ¤Ó,   8//¤Ï   46
    51, 51,
    51, //¤Ð,       9//¤Ð   47
    51, //¤Ñ,       10//¤Ñ  48
    50, //¤Ñ, ¤Ó    11//¤Ò  49
    );


    $jo['jong'] = array(
    51,51,
    /*  ¤¡ ¤¢ ¤£ ¤¤ ¤¥ ¤¦ ¤§ ¤© ¤ª ¤«   */
    0, 1, 2, 3, 4, 5, 6, 8, 9,10,
    /*  ¤¬ ¤­ ¤® ¤¯ ¤° ¤±               */
    11,12,13,14,15,16,
    51,
    /*  ¤² ¤´ ¤µ ¤¶ ¤· ¤¸ ¤º ¤» ¤¼ ¤½   */
    17,19,20,21,22,23,25,26,27,28,
    /*  ¤¾                              */
    29,
    );


    function font($text, $max)
    {
        global $jamo, $jo, $jung_div;
        $jcode = w2j($text);

        for($i=0, $line=0, $line_chk=0; $i < strlen($jcode); $i++)
        {
            if( ord($jcode[$i]) < 128  )
            {
                /*  ÇѱÛÀ̳ª 2¹ÙÀÌÆ® ¹®ÀÚ°¡ ¾Æ´Ï¸é.. */
                if( ord($jcode[$i]) == 32 )
                {
                    $str[$line][0] .= " ";
                    $str[$line][1] .= " ";
                    $line_chk += 2;
                }
                else if( ord($jcode[$i]) == 13 && ord($jcode[$i+1]) == 10 )
                {
                    $i++;
                    $line++;
                    $line_chk=0;
                }
                else if( ord($jcode[$i]) > 32 )
                {
                    $str[$line][0] .= sprintf("%c", ord($jcode[$i]));
                    $str[$line][1] .= " ";
                    $line_chk++;
                }

            }
            else
            {
                $cho    = ( ord($jcode[$i]) & 0x7c ) >> 2;
                $jung   = ( (ord($jcode[$i]) & 0x3 ) << 3 )
                | ( (ord($jcode[$i+1]) & 0xe0 ) >> 5 );
                $jong   = ord($jcode[$i+1]) & 0x1f ;

                if( is_han($cho, $jung, $jong) )
                {
                    /*  ÇѱÛÀÌ ¸Â´Ù! */
                    /*          printf("%s%s%s ",
                    $jamo[$jo['cho'][$cho]],
                    $jamo[$jo['jung'][$jung]],
                    $jamo[$jo['jong'][$jong]] );
                    */
                    $is_one = 0;

                    /* '°ú' -> '°í¤¿' ·Î ºÐ¸® ÇÒ ¶§ '°í' ¸¸µé±â
                    À§ÇØ Àӽà Áß¼º °ª '¤Ç' ÀúÀå¿ë   */
                    $jung_tmp = 0;

                    if( $jung >= 13 && $jung <= 28 )
                    {
                        /*  ¤Ç, ¤È, ¤Ì, ¤Ï.. °°ÀÌ Áß¼ºÀÌ Ãʼº°ú Á¾¼º °¡¿îµ¥ (°ø, ±¤)
                        µé¾î°¥ °æ¿ì..   */

                        switch($jung)
                        {
                            /* ´Ü¸ðÀ½ÀÏ °æ¿ì $is_one ¼ÂÆà */
                            case 13 : $is_one = 1;              /* ¤Ç¤È¤É¤Ê-> ¤Ç */
                            case 14 : case 15   : case 18   :
                            $jung_tmp = 13;
                            break;
                            case 19 : $is_one = 1;              /* ¤Ë */
                            $jung_tmp = 19;
                            break;
                            case 20 : $is_one = 1;              /* ¤Ì¤Í¤Î¤Ï-> ¤Ì */
                            case 21 : case 22   : case 23   :
                            $jung_tmp = 20;
                            break;
                            case 26 : $is_one = 1;              /* ¤Ð */
                            $jung_tmp = 26;
                            break;
                            case 27 : $is_one = 1;              /* ¤Ñ¤Ò-> ¤Ñ */
                            case 28 :
                            $jung_tmp = 27;
                            break;
                        }

                        $tmp = 1 + ( $jung_tmp << 5 ) | 0x8000 | $cho << 10;
                        $str[$line][0] .= j2w(chr($tmp>>8) . chr($tmp));
                    }
                    else
                    {
                        $str[$line][0] .= $jamo[$jo['cho'][$cho]];
                    }
                    if( !$is_one ) {
                        $str[$line][0] .= $jamo[$jung_tmp ?
                                            $jung_div[$jung] : $jo['jung'][$jung]] . " ";
                        $str[$line][1] .= "¡¡";
                        $line_chk += 2;
                    }
                    else
                        $str[$line][0] .= " ";

                    $str[$line][1] .= $jamo[$jo['jong'][$jong]] . " ";

                    $line_chk += 2;

                }
                else
                {
                    /*  ÇѱÛÀÌ ¾Æ´Ï³×..
                    iconv¸¦ ÀÌ¿ëÇؼ­ ¿Ï¼ºÇüÀ» Á¶ÇÕÇüÀ¸·Î ¹Ù²Ù?
                    ÇѱÛÀ» Á¦¿ÜÇÑ 2¹ÙÀÌÆ® ¹®Àڵ鵵 ¹Ù²î´Ï±ñ!
                    ÇѱÛÀ» Á¦¿ÜÇÑ 2¹ÙÀÌÆ® ¹®ÀÚµéÀº ´Ù½Ã ¿Ï¼ºÇüÀ¸·Î! */

                    $str[$line][0] .= j2w(sprintf("%c%c",
                                        ord($jcode[$i]), ord($jcode[$i+1])));
                    $str[$line][1] .= "¡¡";
                    $line_chk += 2;

                }

                $i++;
            }
            if($line_chk >= $max)
            {
                $line++;
                $line_chk = 0;
            }
        }

        for($i=0; $i <= $line; $i++)
        {
            if( $i != 0 )
                $ret .= "<br>\n";
            $ret .= $str[$i][0] . "<br>\n" . $str[$i][1];
        }

        return $ret;
    }


    /*  ------------------------
    ÇÔ¼ö Á¤ÀÇ
    ------------------------ */

    /*  º¯È¯µÈ Á¶ÇÕÇü Äڵ尡 ÇѱÛÀÎÁö ¾Æ´ÑÁö */
    function is_han($cho, $jung, $jong) {

        return (
        ( $cho > 0 && $cho < 21 )           /*  Ãʼº 1~20   */

        &&
        (
        ( $jung > 1 && $jung < 8 )      ||  /*  Áß¼º 2~7    */
        ( $jung > 9 && $jung < 16 )     ||  /*  Áß¼º 10~15  */
        ( $jung > 17 && $jung < 24 )    ||  /*  Áß¼º 18~23  */
        ( $jung > 25 && $jung < 30 )        /*  Áß¼º 26~29  */
        )
        &&
        (
        ( $jong > 0 && $jong < 18 )     ||  /*  Á¾¼º 1~17   */
        ( $jong > 18 && $jong < 30 )        /*  Á¾¼º 19~29  */
        )

        ) ? 1 : 0;
    }

    /*  ¿Ï¼ºÇüÀ» Á¶ÇÕÇüÀ¸·Î */
    function w2j($text)
    {
        return iconv("cp949","johab",$text);
    }

    /*  Á¶ÇÕÇüÀ» ¿Ï¼ºÇüÀ¸·Î */
    function j2w($text)
    {
        return iconv("johab","cp949",$text);
    }





    echo font("¿Í¿ì! ¾È³çÇϼ¼¿ä, ¹Ý°©½À´Ï´Ù! 뷁꿐퉾펤", 50);

    ?>

      Ä¿ÇǴнº Ä«Æä ÃÖ±Ù ±Û
    [04/19] Á¦ÁÖ&#5
    [04/18] ??? ?????
    [04/17] ???? onion ?????? -
    [04/11] ±¹°¡&#5
    [04/10] Stride Into Dream:
    [03/20] Re: ¿Â¶óÀΰÔÀÓÀÇ Á¾ÁÖ±¹ ´ëÇѹα¹
    [10/20] Cross Compiler ±ò
    [07/14] SSL ¬¡¬°
    [04/26] Re: µµ½ºÈ­¸é ¿ø°ÝÁ¶Á¾ ¿©ºÎ
    [04/25] µµ½ºÈ­¸é ¿ø°ÝÁ¶Á¾ ¿©ºÎ
    [10/30] Cshell¿¡¼­ ³­¼ö ¼³Á¤
    [10/23] °øÇ×öµµÁÖ½Äȸ»ç SE ±¸ÀÎ Ëì
    [01/26] Re: wgetÀ¸·Î ´Ù¸¥¼­¹ö¿¡ÀÖ´Â µð·ºÅ丮¸¦ °¡Á®¿À·Á°íÇÕ´Ï´Ù.
    [01/25] wgetÀ¸·Î ´Ù¸¥¼­¹ö¿¡ÀÖ´Â µð·ºÅ丮¸¦ °¡Á®¿À·Á°íÇÕ´Ï´Ù.
    [01/11] ƯÁ¤ ¾Èµå·ÎÀ̵å WebView ¹öÀü¿¡¼­ SSL ¹®Á¦ (WebView ¹ö±×)
      New!   ÃÖ±Ù¿¡ µî·ÏÇÑ ÆäÀÌÁö
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      ¿ÀÇÂij½ºÄÉÀ̵å ijµå (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI¸¦ È°¿ëÇÑ ¸®´ª½º ¼­¹ö°ü¸®
      DNS ¼³Á¤ °Ë»ç
      nagiosgraph ¼³Ä¡ ¹æ¹ý
      Slony-I ¼³Ä¡ ¹æ¹ý (postgresql replication tool)
      Qmail±â¹ÝÀÇ Anti spam ½Ã½ºÅÛ ±¸ÃàÇϱâ
      clusterssh

    [ ÇÔ²²ÇÏ´Â »çÀÌÆ® ]




    ¿î¿µÁø : ÁÁÀºÁøÈ£(truefeel), ¾ß¼ö(yasu), ¹ü³ÃÀÌ, sCag
    2003³â 8¿ù 4ÀÏ~