PHP版 漢字轉碼

2021-06-18 13:09:35 字數 991 閱讀 8687

<?php

function unicode_encode($str, $encoding='gbk', $prefix='&#', $postfix=';')

return $unistr;

}$str = '哈哈';

$unistr = unicode_encode($str);

echo $unistr.'

'; ?>

以上**:

以下**:

漢字亂碼一般用gb和utf-8,如果用gb編碼,網頁用utf-8,或相反,都會造成漢字無法正確顯示

雖然php有模組可以轉碼,但mb_string的個頭比較大,iconv比較適合

但iconv不能把漢字轉成ascii的編碼,類似ൟ這種。下面函式可以實現此功能:

mb_convert_encoding($string,'html-entities','utf-8');

函式如下:

function uni2html($s) else $rt.=$s[$i+3];

}return $rt;

}例子:

$s='你好';

$a=iconv('utf-8','ucs-4',$s);

echo uni2html($a);

執行結果:你好

原理:中文先轉成unicode編碼,再計算unicode的序號。unicode編碼是4個位元組,32位定長,英文本母只占用後面的1個位元組,中文占用後兩個位元組。中日韓文字的unicode編碼範圍4e00 - 9fa5,前兩位補零。所以unicode是定長編碼,而utf-8是變長編碼,乙個字元的長度1-3位元組,英文本幕乙個位元組,中文三個位元組

ascii 轉漢字:

function u2utf8($c)  else if ($c < 0x10000)  else if ($c < 0x200000) 

return $str;   }

echo u2utf8('居');

VB包含漢字的URL轉碼函式 包含空格,漢字

測試呼叫的網頁為aspx頁面 包含漢字的url轉碼函式 private function vbescape psstring as string as string dim ntemp,stemp,stempchar,ntempasc for ntemp 1 to len psstring stem...

對於簡單爬蟲的補充(漢字轉碼)

這個時候直接拼接url方法將不適用,所以我們引入字典作為引數 para dic 進行抓取資料 url response requests.get url,params para dic print url print response 這裡有兩個小知識點 在爬取某些 時候,可能會遇到編碼的問題 我們...

關於iOS中網路請求漢字轉碼問題

在網路請求中,漢字形式的string是必不可少的,相信各位肯定越到過漢字編碼解碼的問題,下面是對漢字進行上傳編碼,拉取解碼的方法 需要轉化成 utf 8 用到的方法是 nsstring encodingstring urlstring stringbyaddingpercentescapesusin...