PHP函式十進位制 二進位制 八進位制和十六進製制轉換

2021-09-07 22:03:00 字數 2932 閱讀 7488

php函式篇詳解十進位制、二進位制、八進位制和十六進製制互相轉換函式說明,主要掌握各進製轉換的方法,以應用於實際開發。

一,十進位制(decimal system)轉換函式說明

1,十進位制轉二進位制 decbin() 函式 ,如下例項echo decbin(12); //輸出 1100 echo decbin(26); //輸出 11010 decbin

(php 3, php 4, php 5)

decbin -- 十進位制轉換為二進位制

說明string decbin ( int number )

返回一字串,包含有給定 number 引數的二進位制表示。所能轉換的最大數值為十進位制的 4294967295,其結果為 32 個 1 的字串。

2,十進位制轉八進位制 decoct() 函式echo decoct(15); //輸出 17 echo decoct(264); //輸出 410 decoct

(php 3, php 4, php 5)

decoct -- 十進位制轉換為八進位制

說明string decoct ( int number )

返回一字串,包含有給定 number 引數的八進位制表示。所能轉換的最大數值為十進位制的 4294967295,其結果為 "37777777777"。

3,十進位制轉十六進製制 dechex() 函式echo dechex(10); //輸出 a echo dechex(47); //輸出 2f dechex

(php 3, php 4, php 5)

dechex -- 十進位制轉換為十六進製制

說明string dechex ( int number )

返回一字串,包含有給定 number 引數的十六進製制表示。所能轉換的最大數值為十進位制的 4294967295,其結果為 "ffffffff"。

二,二進位制(binary system)轉換函式說明

1,二進位制轉十六制進 bin2hex() 函式$binary = "11111001"; $hex = dechex(bindec($binary)); echo $hex;//輸出f9 bin2hex

(php 3 >= 3.0.9, php 4, php 5)

bin2hex -- 將二進位制資料轉換成十六進製制表示

說明string bin2hex ( string str )

返回 ascii 字串,為引數 str 的十六進製制表示。轉換使用位元組方式,高四位位元組優先。

2,二進位制轉十制進 bindec() 函式echo bindec('110011'); //輸出 51 echo bindec('000110011'); //輸出 51 echo bindec('111'); //輸出 7 bindec

(php 3, php 4, php 5)

bindec -- 二進位制轉換為十進位制

說明number bindec ( string binary_string )

返回 binary_string 引數所表示的二進位制數的十進位制等價值。

bindec() 將乙個二進位制數轉換成 integer。可轉換的最大的數為 31 位 1 或者說十進位制的 2147483647。php 4.1.0 開始,該函式可以處理大數值,這種情況下,它會返回 float 型別。

三,八進位制(octal system)轉換函式說明

八進位制轉十進位制 octdec() 函式echo octdec('77'); //輸出 63 echo octdec(decoct(45)); //輸出 45 octdec

(php 3, php 4, php 5)

octdec -- 八進位制轉換為十進位制

說明number octdec ( string octal_string )

返回 octal_string 引數所表示的八進位制數的十進位制等值。可轉換的最大的數值為 17777777777 或十進位制的 2147483647。php 4.1.0 開始,該函式可以處理大數字,這種情況下,它會返回 float 型別。

四,十六進製制(hexadecimal)轉換函式說明

十六進製制轉十進位制 hexdec()函式var_dump(hexdec("see")); var_dump(hexdec("ee")); // both print "int(238)" var_dump(hexdec("that")); // print "int(10)" var_dump(hexdec("a0")); // print "int(160)" hexdec

(php 3, php 4, php 5)

hexdec -- 十六進製制轉換為十進位制

說明number hexdec ( string hex_string )

返 回與 hex_string 引數所表示的十六進製制數等值的的十進位制數。hexdec() 將乙個十六進製制字串轉換為十進位制數。所能轉換的最大數值為 7fffffff,即十進位制的 2147483647。php 4.1.0 開始,該函式可以處理大數字,這種情況下,它會返回 float 型別。

hexdec() 將遇到的所有非十六進製制字元替換成 0。這樣,所有左邊的零都被忽略,但右邊的零會計入值中。

五,任意進製轉換 base_convert() 函式$hexadecimal = 'a37334'; echo base_convert($hexadecimal, 16, 2);//輸出 101000110111001100110100 base_convert

(php 3 >= 3.0.6, php 4, php 5)

base_convert -- 在任意進製之間轉換數字

說明string base_convert ( string number, int frombase, int tobase )

返 回一字串,包含 number 以 tobase 進製的表示。number 本身的進製由 frombase 指定。frombase 和 tobase 都只能在 2 和 36 之間(包括 2 和 36)。高於十進位制的數字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。

PHP函式十進位制 二進位制 八進位制和十六進製制轉換

php函式篇詳解十進位制 二進位制 八進位制和十六進製制互相轉換函式說明,主要掌握各進製轉換的方法,以應用於實際開發。一,十進位制 decimal system 轉換函式說明 1,十進位制轉二進位制 decbin 函式 如下例項echo decbin 12 輸出 1100 echo decbin 2...

十進位制,二進位制,八進位制

發現很多人不懂十進位制 二進位制 八進位制等相互轉化的原理。在此我簡單的寫一下 php中有decbin 用於十進位制轉化二進位制,原理是什麼?我舉例說明一下 33的二進位制是多少?首先你必須明白。二進位制是只出現0101這樣的,33的二進位制是什麼呢?33除以2等於16餘數1,得到的1即為33二進位...

PHP中的十進位制 八進位制 二進位制 十六進製制

我們平時用的都是十進位制。比如 987這個數字,其本質就是7 10 0 8 10 1 9 10 2 個位數上的7,1就是1,十位上的8,1就是10,百位上的9,1是100 1 echo 123 1232 echo 3 echo 3 1 2 10 1 100 123 上面在php 中,就是十進位制的數...