本文實例講述了PHP實現(xiàn)UTF8二進制及明文字符串的轉(zhuǎn)化功能。分享給大家供大家參考,具體如下:
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
40
41
42
|
<?php /***********本程序由云客編寫。有空的時候承接php軟件開發(fā) *滿足一下新手們的好奇心,看看UTF-8的二進制是什么樣子滴 ****************************/ define( "b" , "<br>" ); $a = "FE" ; $a1 = "FF" ; $s = 16; $e = 2; echo $s . "進制的" . $a . "表示為" . $e . "進制是" . base_convert ( $a , $s , $e ) . b; echo $s . "進制的" . $a1 . "表示為" . $e . "進制是" . base_convert ( $a1 , $s , $e ) . b; $str = "計算機rr我們是誰?" ; $strlen = strlen ( $str ); $n = 0; echo $str . '(二進制UTF-8表示):' .b; $str_bin = '' ; while ( $n < $strlen ) { $t = ord( $str [ $n ]); $stra = base_convert ( $t , 10, 2) ; if ( strlen ( $stra )<8) { $stra = "0" . $stra ; } $str_bin .= $stra ; $n ++; } echo $str_bin .b; //已經(jīng)翻譯為二進制了 $str_bin = "1110100010101110101000011110011110101110100101111110011010011100101110100110000101110011111001101000100010010001111001001011101110101100111001101001100010101111111010001011000010000001111011111011110010011111" ; //在此輸入二進制,程序編碼為明文輸出 $chr = '' ; $str = '' ; for ( $i =0; $i < strlen ( $str_bin ); $i ++) { $chr .= $str_bin [ $i ]; if (( $i +1)%8==0) { $str .= chr ( base_convert ( $chr , 2, 10)); $chr =NULL; } } echo $str ; //二進制的UTF8原代碼明文 ?> |
運行結(jié)果:
1
2
3
4
5
|
16進制的FE表示為2進制是11111110 16進制的FF表示為2進制是11111111 計算機rr我們是誰?(二進制UTF-8表示): 1110100010101110101000011110011110101110100101111110011010011100101110100111001001110010111001101000100010010001111001001011101110101100111001101001100010101111111010001011000010000001111011111011110010011111 計算機 as 我們是誰? |
PS:這里再為大家推薦幾款相關(guān)在線編碼轉(zhuǎn)換工具供大家參考使用:
UTF-8編碼轉(zhuǎn)換工具:https://tool.zzvips.com/t/utf-8/
unicode編碼轉(zhuǎn)換工具:https://tool.zzvips.com/t/unicode/
在線任意進制轉(zhuǎn)換工具:https://tool.zzvips.com/t/hex/
希望本文所述對大家PHP程序設(shè)計有所幫助。
原文鏈接:http://blog.csdn.net/u011474028/article/details/14519455