内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

php怎么實(shí)現(xiàn)轉(zhuǎn)化為二進(jìn)制字符串

小編給大家分享一下php怎么實(shí)現(xiàn)轉(zhuǎn)化為二進(jìn)制字符串,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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

php實(shí)現(xiàn)字符串轉(zhuǎn)化為二進(jìn)制字符串的方法:首先創(chuàng)建一個(gè)PHP示例文件;然后通過(guò)“function StrToBin($str){...}”方法將字符串轉(zhuǎn)換成二進(jìn)制即可。

PHP 字符串 與 二進(jìn)制相互轉(zhuǎn)換

在網(wǎng)絡(luò)上查找到了字符串與二進(jìn)制相互轉(zhuǎn)換的方法(相關(guān)問(wèn)題描述和問(wèn)題在下列代碼中,請(qǐng)耐心查看,謝謝):

/** 
* 將字符串轉(zhuǎn)換成二進(jìn)制 
* @param type $str 
* @return type 
* php 中顯示的字符串是多少進(jìn)制的??
* 例如:$str = '你好'; // 這邊的 '你好' 是什么進(jìn)制數(shù)據(jù)(我知道他是字符串?。??
*/  
function StrToBin($str){  
    //1.列出每個(gè)字符
    // 這邊的分割正則也不理解
    // (?<!^) 后瞻消極斷言
    // (?!$) 前瞻消極斷言
    // 看意思好像說(shuō)的是:不以^開(kāi)頭(但是這邊 ^ 又沒(méi)有被轉(zhuǎn)義...),不以 $ 結(jié)尾(同上)
    // 然后得到的記過(guò)就是字符串一個(gè)個(gè)被分割成了數(shù)組(郁悶)
    // 求解釋
    $arr = preg_split('/(?<!^)(?!$)/u', $str);  
    //2.unpack字符  
    foreach($arr as &$v){
        /**
         * unpack:將二進(jìn)制字符串解包(英語(yǔ)原文:Unpack data from binary string)
         * H: 英語(yǔ)描述原文:Hex string, high nibble first 
         * 這段代碼做了什么??
         */
        $temp = unpack('H*', $v); // 這邊被解析出來(lái)的字符串為什么是 16進(jìn)制的??
        $v = base_convert($temp[1], 16, 2);  
        unset($temp);  
    }  
  
    return join(' ',$arr);  
}  
  
/** 
* 講二進(jìn)制轉(zhuǎn)換成字符串 
* @param type $str 
* @return type 
*/  
function BinToStr($str){  
    $arr = explode(' ', $str);  
    foreach($arr as &$v){  
        // 他做了什么??
        $v = pack("H".strlen(base_convert($v, 2, 16)), base_convert($v, 2, 16));  
    }  
  
    return join('', $arr);  
}  
  
echo StrToBin("php二次開(kāi)發(fā):www.php2.cc");;  
echo '<br/>';  
echo BinToStr("1110000 1101000 1110000 111001001011101010001100 111001101010110010100001 111001011011110010000000 111001011000111110010001 111011111011110010011010 1110111 1110111 1110111 101110 1110000 1101000 1110000 110010 101110 1100011 1100011");

上述的函數(shù)是怎樣實(shí)現(xiàn)二進(jìn)制和字符串的相互轉(zhuǎn)換的??

-------分隔符-------

關(guān)于 pack 和 unpack 我已經(jīng)清楚了!順便分享下:

就用這邊例子,說(shuō)說(shuō)我理解到的部分:

pack用法:

// 二進(jìn)制數(shù)字 => 二進(jìn)制字符串
$bin_number = '這邊是二進(jìn)制數(shù)字';
$hex = bin2hex($bin_number );
// 由于指定了 H(16進(jìn)制,高位在前),所以第二個(gè)參數(shù)需要使 16 進(jìn)制字字符串
// strlen($hex) 指定打包多少個(gè) 16 進(jìn)制字符串
// 也可以使用 * 來(lái)自動(dòng)識(shí)別
// 結(jié)果就是:二進(jìn)制字符串了
$bin_str = pack('H' . strlen($hex) , $hex);
<=>
$dec = bindec($bin_number);
$hex = dechex($dec);
$bin_str = hex2bin($hex);
unpack 用法:
//  轉(zhuǎn)換作用:2進(jìn)制字符串 => 16進(jìn)制字符串
$str = unpack('H*' , '陳'); 
<=>
$str = bin2hex('陳');

以上是“php怎么實(shí)現(xiàn)轉(zhuǎn)化為二進(jìn)制字符串”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站標(biāo)題:php怎么實(shí)現(xiàn)轉(zhuǎn)化為二進(jìn)制字符串
本文路徑:http://www.rwnh.cn/article28/psggcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、品牌網(wǎng)站建設(shè)、定制開(kāi)發(fā)外貿(mào)網(wǎng)站建設(shè)、用戶(hù)體驗(yàn)微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
樟树市| 册亨县| 崇礼县| 射阳县| 伊金霍洛旗| 宝兴县| 肇东市| 武宁县| 海安县| 武义县| 博野县| 平江县| 安化县| 清水河县| 六盘水市| 玉门市| 交口县| 沁阳市| 通渭县| 都江堰市| 龙州县| 石门县| 青阳县| 邯郸县| 江陵县| 得荣县| 济阳县| 八宿县| 开远市| 邹平县| 建平县| 龙南县| 德阳市| 长治县| 湟中县| 来凤县| 福贡县| 固安县| 句容市| 屯门区| 澎湖县|