• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發(fā)教程 > 詳細頁面

        編碼對比表的運用(2)

        編碼對比表的運用(2)

        更新時間:2022-04-27 文章作者:未知 信息來源:網(wǎng)絡 閱讀次數(shù):

        <?php
        /**
        * 本程序用于從編碼對照表裝入簡繁編碼,利用序列化來縮短裝入時間
        * 同時提供兩個繁簡轉(zhuǎn)換函數(shù)
        * 使用方法:
        * 在需要的程序中加入
        * require_once "load_gb_big5.php";
        * setchar(["big5"]);
        */

        $filename = "gb_big5.txt";
        if(!file_exists($filename)) {
        /**
         * 連接并打開對照表
         */
        $conn = mysql_connect();
        mysql_select_db("unicode");
        /**
         * 提取其中big5和gbk編碼,表中big5只有13487個(包括符號)
         */
        $sql = "select gbk,big5,gb2312 from unicode where big5 != ''";
        $rs = mysql_query($sql);
        /**
         * 讀取數(shù)據(jù)到數(shù)組,注意key和value的處理
         */
        $code = array(0=>"big5",gb2312=>0);

        while($row = mysql_fetch_array($rs)) {
        $code[pack("H4",$row][gbk])] = pack("H4",$row[big5]);
        }
        mysql_close($conn);
        $fp = fopen($filename,"w");
        fwrite($fp,serialize($code));
        fclose($fp);
        }else {
        $fp = fopen($filename,"r");
        $code = unserialize(fread($fp,filesize($filename)));
        fclose($fp);
        }

        /**
        * 將輸入串轉(zhuǎn)換成相應編碼
        */
        function getchar($s) {
        global $code;
        $v = "";
        for($i=0;$i<strlen($s);$i++) {
        if(ord($s[$i]) > 0x7f) {
        $p = sprintf("%02X%02X",$s[$i],$s[$i+1]);
        $p = $s[$i].$s[$i+1];
        $ch = $code[$p];
        if($ch == "")
        $ch = $s[$i].$s[$i+1];
        $v .= $ch;
        $i++;
        }else
        $v .= $s[$i];
        }
        return $v;
        }

        /**
        * 設定轉(zhuǎn)換類型并輸出頭
        * 此函數(shù)前不能有其他輸出
        */
        function setchar($char="gb2312") {
        global $code;
        if($char != "gb2312" && $char != "big5")
        die("字符編碼類型錯!!!");
        if($code[0] != $char)
        $code = array_flip($code);// 若不是指定的編碼類型,則交換鍵
        header("Content-type: text/html; charset=$char");
        }

        ?>
        測試例:
        <?php
        require_once "load_gb_big5.php";
        setchar("big5");

        echo getchar('
        最近完成了gbk、gb2312、big5的編碼對照表(含其漢語拼音)的整理
        現(xiàn)以文本文件方式提供給大家,壓縮包297k
        其中:(均包括符號)
        gbk21791
        big5 15863
        gb2312 7478
        注意數(shù)據(jù)行的",",在mysql下必須要有,否則可能出錯。有的朋友拿到的新版可能沒有,請自行加上。
        (2002-10-24)
        有興趣的朋友請與我聯(lián)系,email:czjsz_ah@stats.gov.cn

        文檔格式:
        "B6F6","","B6F6","997F","餓","e",
        "B6F7","AEA6","B6F7","6069","恩","en",
        "B6F8","A6D3","B6F8","800C","而","er|neng",
        "B6F9","A449","B6F9","513F","兒","er|ren",
        順次為:gbk、big5、gb2312、unicode、字模、拼音

        mysql建表代碼(請按實際情況修改):
        ');
        ?>

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統(tǒng)下載排行

        主站蜘蛛池模板: 男女一边桶一边摸一边脱视频免费| 日韩亚洲国产综合高清| h在线看免费视频网站男男| 国产日产成人免费视频在线观看| 久久久久亚洲国产| 国产乱子影视频上线免费观看| 最新亚洲人成无码网www电影| 又大又硬又爽免费视频| 特a级免费高清黄色片| MM131亚洲国产美女久久| ssswww日本免费网站片| 国产综合亚洲专区在线| 最近免费中文字幕MV在线视频3 | 免费在线观看污网站| 美女免费精品高清毛片在线视| 亚洲精品97久久中文字幕无码| 一级做a爰片久久毛片免费陪| 亚洲伊人色欲综合网| 久久精品乱子伦免费| 亚洲一区免费视频| 日本免费高清一本视频| www永久免费视频| 亚洲一区二区在线免费观看| 国产免费AV片在线播放唯爱网| 亚洲AV无码一区二区三区电影| 亚洲国产成人VA在线观看| 爱丫爱丫影院在线观看免费| 亚洲一级视频在线观看| 亚洲免费视频一区二区三区| 一级毛片在线观看免费| 亚洲色大18成人网站WWW在线播放 亚洲色大成WWW亚洲女子 | 911精品国产亚洲日本美国韩国| 成视频年人黄网站免费视频| 国产精品亚洲精品日韩电影| 亚洲av永久无码精品古装片| 最近2019中文字幕免费看最新| 国产在线精品一区免费香蕉| 亚洲婷婷综合色高清在线| 亚洲中久无码不卡永久在线观看| 亚洲免费人成视频观看| 国产精品免费在线播放|