十六進制轉(zhuǎn)為二進制有兩種理解方法,第一是十六進制字符串轉(zhuǎn)二進制字符串,第二是十六進制數(shù)轉(zhuǎn)二進制數(shù),下面分別介紹2種轉(zhuǎn)換方法:
創(chuàng)新互聯(lián)公司長期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為石嘴山企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、網(wǎng)站設(shè)計,石嘴山網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
1.hex2bin函數(shù)可以將十六進制字符串轉(zhuǎn)換為二進制字符串,詳細用法如下:
hex2bin — 轉(zhuǎn)換十六進制字符串為二進制字符串
string?hex2bin(string?$data)
轉(zhuǎn)換十六進制字符串為二進制字符串。
參數(shù):
data:十六進制表示的數(shù)據(jù)
返回值:
返回給定數(shù)據(jù)的二進制表示 ?或者在失敗時返回 FALSE。
異常:
如果輸入的十六進制字符串是奇數(shù)長數(shù)或者無效的十六進制字符串將會拋出E_WARNING 級別的錯誤。
示例:
$hex?=?hex2bin("6578616d706c65206865782064617461");
echo?$hex;//example?hex?data(其中16進制代表的是ascii碼)
2.base_convert是真正意義上的進制轉(zhuǎn)換函數(shù)
base_convert — 在任意進制之間轉(zhuǎn)換數(shù)字
string?base_convert(?string?$number,?int?$frombase,?int?$tobase)
返回一字符串,包含 number以 tobase 進制的表示。number 本身的進制由frombase指定。frombase 和 tobase 都只能在2 和 36 之間(包括 2 和 36)。高于十進制的數(shù)字用字母 a-z 表示,例如a 表示 10,b 表示 11 以及 z 表示 35。
參數(shù):
number:要轉(zhuǎn)換的數(shù)字
frombase:原始進制
tobase:轉(zhuǎn)換后的進制
示例:
$hexadecimal?=?'A37334';
echo?base_convert($hexadecimal,?16,?2);//101000110111001100110100
PHP數(shù)據(jù)類型有三種轉(zhuǎn)換方式:
在要轉(zhuǎn)換的變量之前加上用括號括起來的目標(biāo)類型
使用3個具體類型的轉(zhuǎn)換函數(shù),intval()、floatval()、strval()
使用通用類型轉(zhuǎn)換函數(shù)settype(mixed var,string type)
強制類型轉(zhuǎn)換一般分為隱式和顯式的,
元數(shù)據(jù) 顯式 隱式
$n = 100; (string)$n $n . ''
$n = '100'; (int)$n $n + 0;
$b = 1; (boolean)$b !$b
.......