php 在做註冊、登入或是url 傳遞參數時都會用到字元變數的加密,下面我們就來簡單的介紹下:php 自帶的加密函數
不可逆的加密函數為:md5()、crypt()
md5() 用來計算MD5 哈稀。語法為:string md5(string str);
crypt() 將字串用 UNIX 的標準加密 DES 模組加密。這是單向的加密函數,無法解密。欲比對字串,將已加密的字串的頭二個字元放在 salt 的參數中,再比對加密後的字串。語法為:string crypt(string str, string [salt]);
可逆轉的加密為:base64_encode()、urlencode() 對應的解密函數:base64_decode() 、urldecode()
# base64_encode() 將字串以MIME BASE64 編碼。此編碼方式可以讓中文字或圖片也能在網路上順利傳輸。語法為string base64_encode(string data); 它的解密函數為:string base64_decode(string encoded_data); 將復回原樣
urlencode() 將字串以 URL 編碼。例如空格就會變成加號。語法為:string urlencode(string str);
它的解密函數為:string urldecode(string str); 將復回原樣
看段程式碼:
代碼如下:
<?php define("str","墨剑"); echo 'md5 加密后的结果为:'.md5(str).'<br>';//md5 加密 echo 'crypt加密后的结果为:'.crypt(str,str).'<br>';// crypt加密 $base64encode=base64_encode(str);// base64_encode() 加密 echo 'base64_encode加密后的结果为:'.$base64encode.'<br>'; echo 'base64_decode解密后的结果为:'.base64_decode($base64encode).'<br>'; //base64_decode()解密 $urlencode=urlencode(str); //urlencode() 加密 echo 'urlencode加密后的结果为:'.$urlencode.'<br>'; echo 'urldecode解密后的结果为:'.urldecode($urlencode).'<br>';//urldecode() 解密 ?>
輸出的結果為:
md5 加密後的結果為:ea796af15c74e90faeba49576fa7984b
crypt加密後的結果為:墨ylCzgTtYXPs
base64_encode##base64_encode==
base64_decode解密後的結果為:墨劍
urlencode加密後的結果為:%C4%AB%BD%A3
urldecode解密後的結果為:墨劍
以上是php加密函數 md5,crypt,base64_encode等用法小結的詳細內容。更多資訊請關注PHP中文網其他相關文章!