首頁 >後端開發 >php教程 >php的md5結果能否轉為二進位再base64編碼以縮短長度?

php的md5結果能否轉為二進位再base64編碼以縮短長度?

WBOY
WBOY原創
2016-08-10 09:07:271982瀏覽

問題大致如題, 簡單的進位轉換似乎只能得到0和1的字串, 並不是二進位資料, 希望知道這個程式碼該怎麼寫, 能否盡量用php內建的函數實作

目的是產生更短的唯一標識, 之前是使用md5再判斷是否重複的, 但md5結果是32位16進製字串, 還是有點長, 於是就想轉成64進制的字串, 不知道我的思路有沒有錯?

回覆內容:

問題大致如題, 簡單的進位轉換似乎只能得到0和1的字串, 並不是二進位資料, 希望知道這個程式碼該怎麼寫, 能否盡量用php內建的函數實作

目的是產生更短的唯一標識, 之前是使用md5再判斷是否重複的, 但md5結果是32位16進製字串, 還是有點長, 於是就想轉成64進制的字串, 不知道我的思路有沒有錯?

自行解決了:

<code>function base64md5 ($str) {
 return base64_encode(md5($str, 1));
}</code>

ps:大致如上, 手機寫的代碼, 不保證正確…

可以用16位的md5啊.

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn