本篇文章給大家帶來的內容是關於php中擁有的加密解密函數的案例解析,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所協助。
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加密解密函數案例代碼:
<?php define('str','moqiang02@sina.com'); 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加密後的結果為:0c4cf10f2e489a6e6482db13dfafaab8
crypt加密後的結果為:moMaPvME.49dQ
base64_encode加密後的結果為:bW9xaWFuZzAyQHNpbmEuY29t
base64_decode解密後的結果為:moqiang02@sina.com
urlencode加密後的結果為:moqiang02%40sina.com
urldecode解密後的結果為:moqiang02@sina.com