亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將字符串轉換為二進制,然后再次使用PHP返回

將字符串轉換為二進制,然后再次使用PHP返回

PHP
守候你守候我 2019-10-18 09:51:51
有沒有一種方法可以將字符串轉換為二進制然后再返回到標準PHP庫中?要弄清楚我要做什么,是將密碼存儲在數據庫中。我將首先使用哈希函數將其轉換,然后最終將其存儲為二進制。我發現最好的方法是使用此功能。似乎同時散列并以二進制輸出。http://php.net/manual/zh/function.hash-hmac.php
查看完整描述

3 回答

?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

您要使用pack和base_convert。


// Convert a string into binary

// Should output: 0101001101110100011000010110001101101011

$value = unpack('H*', "Stack");

echo base_convert($value[1], 16, 2);


// Convert binary into a string

// Should output: Stack

echo pack('H*', base_convert('0101001101110100011000010110001101101011', 2, 16));


查看完整回答
反對 回復 2019-10-18
?
莫回無

TA貢獻1865條經驗 獲得超7個贊

是的,當然!


那里...


$bin = decbin(ord($char));

...然后再回來。


$char = chr(bindec($bin));


查看完整回答
反對 回復 2019-10-18
?
婷婷同學_

TA貢獻1844條經驗 獲得超8個贊

字符串只是字節序列,因此實際上是PHP中的二進制數據。您到底想做什么?


編輯


如果你想在數據庫中存儲二進制數據,這個問題經常是在你的數據庫中的列定義。PHP不二進制數據和字符串之間進行區分,但是數據庫做。比如在MySQL中,你應該存儲在二進制數據BINARY,VARBINARY或BLOB列。


另一種辦法是給base64_encode你的PHP字符串,并將其存儲在一些VARCHAR或TEXT數據庫列。但要注意的是,當字符串的長度將增加base64_encode使用。


查看完整回答
反對 回復 2019-10-18
  • 3 回答
  • 0 關注
  • 362 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號