導航:首頁 > 編程語言 > phpunicode函數

phpunicode函數

發布時間:2022-04-29 09:49:16

php中把漢字轉換成unicode方法

把那個hidemail函數改改不就行了。。 <?php //將utf8編碼的漢字轉換為unicode function htou($c){ $n = (ord($c[0]) & 0x1f) << 12; $n += (ord($c[1]) & 0x3f) << 6; $n += ord($c[2]) & 0x3f; return $n; } //在代碼中隱藏utf8格式的字元串 function my_utf8_unicode($str) { $encode=''; for($i=0;$i<strlen($str);$i++){ if(ord(substr($str,$i,1))> 0xa0){ $encode.='&#'.htou(substr($str,$i,3)).';'; $i+=2; }else{ $encode.='&#'.ord($str[$i]).';'; } } return $encode; } echo my_utf8_unicode("哈哈ABC"); ?>

② PHP如何把數組里的中文Unicode轉換成Utf-8編碼

最簡單的:
$str = iconv("gbk", "utf-8//ignore", $str);
或者:
$str = mb_convert_encoding($str, "utf-8", "gbk");

稍微解釋一下 //ignore 的意思是轉換不了的字元就忽略。建議把這個寫上。否則遇到轉換不了的字元會報錯。gbk替換成你需要轉換的編碼就可以了。

③ PHP解密Unicode及Escape加密字元串

在json中不支持中文,用它傳送中文數據就會出現數據丟失或者亂碼,必須在傳送前對要發送的字元串進行編碼,由於傳送過去需要用js進行數據解析,考慮
到js中有unescape函數,故若在php中有個escape函數,對數據進行編碼,在客戶端用unescape進行
解碼,這樣就會方便很多。
本文給大家分享一個PHP解密Unicode及Escape加密字元串函數
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
?php
function
uni_decode($s)
{
preg_match_all('/#([0-9]{2,5});/',
$s,
$html_uni);
preg_match_all('/[%]u([0-9a-f]{4})/ie',
$s,
$js_uni);
$source
=
array_merge($html_uni[0],
$js_uni[0]);
$js
=
array();
for($i=0;$icount($js_uni[1]);$i++)
{
$js[]
=
hexdec($js_uni[1][$i]);
}
$utf8
=
array_merge($html_uni[1],
$js);
$code
=
$s;
for($j=0;$jcount($utf8);$j++)
{
$code
=
str_replace($source[$j],
unicode2utf8($utf8[$j]),
$code);
}
return
$code;//$s;//preg_replace('/u([0-9a-f]{4})/ie',
chr(hexdec('1')),
$s);
}
function
unicode2utf8($c)
{
$str=;
if
($c
0x80)
{
$str.=chr($c);
}
else
if
($c
0x800)
{
$str.=chr(0xc0
|
$c6);
$str.=chr(0x80
|
$c
0x3f);
}
else
if
($c
0x10000)
{
$str.=chr(0xe0
|
$c12);
$str.=chr(0x80
|
$c6
0x3f);
$str.=chr(0x80
|
$c
0x3f);
}
else
if
($c
0x200000)
{
$str.=chr(0xf0
|
$c18);
$str.=chr(0x80
|
$c12
0x3f);
$str.=chr(0x80
|
$c6
0x3f);
$str.=chr(0x80
|
$c
0x3f);
}
return
$str;
}
$str='%u5927%u5BB6%u597D%uFF0C我是孤魂!br
/';
echo
uni_decode($str);
//
大家好,我是孤魂!這是測試文本!
在網上搜索一把,很多用php實現的escape函數,大同小異
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function
phpescape($str){
preg_match_all(/[x80-xff].|[x01-x7f]+/,$str,$newstr);
$ar
=
$newstr[0];
foreach($ar
as
$k=$v){
if(ord($ar[$k])=127){
$tmpString=bin2hex(iconv(GBK,ucs-2,$v));
if
(!eregi(WIN,PHP_OS)){
$tmpString
=
substr($tmpString,2,2).substr($tmpString,0,2);
}
$reString.=%u.$tmpString;
}
else
{
$reString.=
rawurlencode($v);
}
}
return
$reString;
}
以上所述就是本文的全部內容了,希望大家能夠喜歡。

④ php中chr函數 為什麼可以輸出unicode字元

ASCII碼表示單位元組字元(其中包括英文字母、數字、英文標點符號、不可見字元以及控制字元等等),它總是小於0x80,即小於十進制的128。當在處理字元時,如果位元組小於0x80,則把它當作單位元組來處理,否則會繼續讀取下一個位元組,這通常跟編碼有關,GBK會將2個位元組當成一個字元來處理,UTF8則需要3個位元組。有時候在PHP中需要做類似的處理,比如計算字元串中字元的個數(字元串可能包含單位元組和多位元組),strlen方法只能計算位元組數,而mb_strlen需要開啟擴展。

⑤ 這個php的unicode_decode()自編函數還有救不

換個更快捷簡短的反編譯函數吧!
<?php
function unicode_decode($name){

$json = '{"str":"'.$name.'"}';
$arr = json_decode($json,true);
if(empty($arr)) return '';

return $arr['str'];

}
?>

⑥ PHP unicode_encode 編碼問題

你確定unicode_encode是php自帶的函數?這個函數應該是自定義的吧,如果是的話你檢查一下這個函數的代碼就好了。不行的話把代碼發給我也可以。

⑦ php如何實現文字轉Unicode編碼

為了要將Unicode轉換為UTF-8,當然要知道他們的區別到底在什麼地方。下面來看一下,在Unicode中的編碼是怎樣轉換成UTF-8的,在UTF-8中,如果一個字元的位元組小於0x80(128)則為ASCII字元,佔一個位元組,可以不用轉換,因為UTF-8兼容ASCII編碼。假如在Unicode中漢字「你」的編碼為「u4F60」,把它轉換為二進制為100111101100000,然後按照UTF-8的方法進行轉換。可以將Unicode二進制從低位往高位取出二進制數字,每次取6位,如上述的二進制就可以分別取出為如下所示的格式,前面按格式填補,不足8位用0填補。

閱讀全文

與phpunicode函數相關的資料

熱點內容
數學奇跡神奇運演算法 瀏覽:359
大廠的程序員的水平如何 瀏覽:700
遺傳演算法入門經典書籍 瀏覽:878
源碼炮台腳本 瀏覽:620
在位編輯命令 瀏覽:347
曲式分析基礎教程pdf 瀏覽:14
php生成靜態html頁面 瀏覽:964
怎麼分割pdf 瀏覽:812
壓縮垃圾報警器 瀏覽:629
小公司一般都用什麼伺服器 瀏覽:968
java獲取時間gmt時間 瀏覽:820
為什麼csgo一直連接不到伺服器 瀏覽:504
安卓登ins需要什麼 瀏覽:836
機器人演算法的難點 瀏覽:226
全自動化編程 瀏覽:727
程序員高薪限制 瀏覽:693
壓縮圖片壓縮 瀏覽:75
美國發明解壓魔方 瀏覽:302
電腦怎麼備案網上伺服器 瀏覽:515
旅行商問題Python寫法 瀏覽:953