真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎樣在php中實現(xiàn)utf8轉(zhuǎn)unicode

怎樣在php中實現(xiàn)utf8轉(zhuǎn)unicode?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

站在用戶的角度思考問題,與客戶深入溝通,找到雞西梨樹網(wǎng)站設(shè)計與雞西梨樹網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋雞西梨樹地區(qū)。

php實現(xiàn)utf8轉(zhuǎn)unicode的方法:首先將第一個字節(jié)的0100提取出來;然后將得到的結(jié)果左移12位;接著提取111101,將所得到的結(jié)果左移6位與最高字節(jié)所得的結(jié)果取或;最后以此類推第n位直接與111111【0x3F】取與即可。

php實現(xiàn)utf8轉(zhuǎn)unicode的方法:

當(dāng)然在UTF-8到Unicode的轉(zhuǎn)換也是通過移位等來完成的,就是把UTF-8那些格式相應(yīng)的位置的二進(jìn)制數(shù)給揪出來。

在例子中“你”為三個字節(jié),因此要每個字節(jié)進(jìn)行處理,有高位到低位進(jìn)行處理。在UTF-8中“你”為11100100,10111101,10100000。從高位起即第一個字節(jié)11100100就是把其中的"0100"給取出來,這個很簡單只要和11111(0x1F)取與(&),由三字節(jié)可以得知最到位肯定位于12位之前,因為每次取六位。所以還要將得到的結(jié)果左移12位,最高位也就這樣完成了0100,000000,000000。

而第二位則是要把“111101”給取出來,則只需將第二字節(jié)10111101和111111(0x3F)取與(&)。在將所得到的結(jié)果左移6位與最高字節(jié)所得的結(jié)果取或(|),第二位就這樣完成了,得到的結(jié)果為0100,111101,000000。以此類推最后一位直接與111111(0x3F)取與(&),再與前面所得的結(jié)果取或(|)即可得到結(jié)果0100,111101,100000。

/**
 * utf8字符轉(zhuǎn)換成Unicode字符
 * @param [type] $utf8_str Utf-8字符
 * @return [type]      Unicode字符
 */
function utf8_str_to_unicode($utf8_str) {
  $unicode = 0;
  $unicode = (ord($utf8_str[0]) & 0x1F) << 12;
  $unicode |= (ord($utf8_str[1]) & 0x3F) << 6;
  $unicode |= (ord($utf8_str[2]) & 0x3F);
  return dechex($unicode);
}
/**
 * Unicode字符轉(zhuǎn)換成utf8字符
 * @param [type] $unicode_str Unicode字符
 * @return [type]       Utf-8字符
 */
function unicode_to_utf8($unicode_str) {
  $utf8_str = '';
  $code = intval(hexdec($unicode_str));
  //這里注意轉(zhuǎn)換出來的code一定得是整形,這樣才會正確的按位操作
  $ord_1 = decbin(0xe0 | ($code >> 12));
  $ord_2 = decbin(0x80 | (($code >> 6) & 0x3f));
  $ord_3 = decbin(0x80 | ($code & 0x3f));
  $utf8_str = chr(bindec($ord_1)) . chr(bindec($ord_2)) . chr(bindec($ord_3));
  return $utf8_str;
}

看完上述內(nèi)容,你們掌握怎樣在php中實現(xiàn)utf8轉(zhuǎn)unicode的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


當(dāng)前標(biāo)題:怎樣在php中實現(xiàn)utf8轉(zhuǎn)unicode
轉(zhuǎn)載來源:http://weahome.cn/article/jpeiej.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部