php轉換為二進位的實作方法:先建立一個PHP範例檔;然後定義一個StrToBin方法;接著透過unpack方法解析字串;最後透過「base_convert」函數轉換為二進位即可。
推薦:《PHP影片教學》
PHP 字串與二進位相互轉換
在網路上查找到了字串與二進位相互轉換的方法(相關問題描述和問題在下列程式碼中,請耐心查看,謝謝):
/** * 将字符串转换成二进制 * @param type $str * @return type * php 中显示的字符串是多少进制的?? * 例如:$str = '你好'; // 这边的 '你好' 是什么进制数据(我知道他是字符串!)?? */ function StrToBin($str){ //1.列出每个字符 // 这边的分割正则也不理解 // (?'; echo BinToStr("1110000 1101000 1110000 111001001011101010001100 111001101010110010100001 111001011011110010000000 111001011000111110010001 111011111011110010011010 1110111 1110111 1110111 101110 1110000 1101000 1110000 110010 101110 1100011 1100011");
上述的函數是怎麼實現二進位和字串的相互轉換的? ?
-------分隔符號-------
關於 pack 和 unpack 我已經清楚了!順便分享下:
就用這邊例子,說說我理解到的部分:
pack用法:
// 二进制数字 => 二进制字符串 $bin_number = '这边是二进制数字'; $hex = bin2hex($bin_number ); // 由于指定了 H(16进制,高位在前),所以第二个参数需要使 16 进制字字符串 // strlen($hex) 指定打包多少个 16 进制字符串 // 也可以使用 * 来自动识别 // 结果就是:二进制字符串了 $bin_str = pack('H' . strlen($hex) , $hex); <=> $dec = bindec($bin_number); $hex = dechex($dec); $bin_str = hex2bin($hex); unpack 用法: // 转换作用:2进制字符串 => 16进制字符串 $str = unpack('H*' , '陈'); <=> $str = bin2hex('陈');
以上是php轉換為二進位的實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!