php 的加密函數(shù) md5,crypt,base64_encode 等使用介紹
更新時間:2012年04月09日 01:19:44 作者:
php 在做注冊、登錄或是url 傳遞參數(shù)時都會用到 字符變量的加密,下面我們就來簡單的介紹下:php 自帶的加密函數(shù)
不可逆的加密函數(shù)為:md5()、crypt()
md5() 用來計(jì)算 MD5 哈稀。語法為:string md5(string str);
crypt() 將字符串用 UNIX 的標(biāo)準(zhǔn)加密 DES 模塊加密。這是單向的加密函數(shù),無法解密。欲比對字符串,將已加密的字符串的頭二個字符放在 salt 的參數(shù)中,再比對加密后的字符串。語法為:string crypt(string str, string [salt]);
可逆轉(zhuǎn)的加密為:base64_encode()、urlencode() 相對應(yīng)的解密函數(shù):base64_decode() 、urldecode()
base64_encode() 將字符串以 MIME BASE64 編碼。此編碼方式可以讓中文字或者圖片也能在網(wǎng)絡(luò)上順利傳輸。語法為string base64_encode(string data); 它的解密函數(shù)為:string base64_decode(string encoded_data); 將復(fù)回原樣
urlencode() 將字符串以 URL 編碼。例如空格就會變成加號。語法為:string urlencode(string str);
它的解密函數(shù)為:string urldecode(string str); 將復(fù)回原樣
看段代碼:
<?php
define("str","墨劍");
echo 'md5 加密后的結(jié)果為:'.md5(str).'<br>';//md5 加密
echo 'crypt加密后的結(jié)果為:'.crypt(str,str).'<br>';// crypt加密
$base64encode=base64_encode(str);// base64_encode() 加密
echo 'base64_encode加密后的結(jié)果為:'.$base64encode.'<br>';
echo 'base64_decode解密后的結(jié)果為:'.base64_decode($base64encode).'<br>'; //base64_decode()解密
$urlencode=urlencode(str); //urlencode() 加密
echo 'urlencode加密后的結(jié)果為:'.$urlencode.'<br>';
echo 'urldecode解密后的結(jié)果為:'.urldecode($urlencode).'<br>';//urldecode() 解密
?>
輸出的結(jié)果為:
md5 加密后的結(jié)果為:ea796af15c74e90faeba49576fa7984b
crypt加密后的結(jié)果為:墨ylCzgTtYXPs
base64_encode加密后的結(jié)果為:xKu9ow==
base64_decode解密后的結(jié)果為:墨劍
urlencode加密后的結(jié)果為:%C4%AB%BD%A3
urldecode解密后的結(jié)果為:墨劍
md5() 用來計(jì)算 MD5 哈稀。語法為:string md5(string str);
crypt() 將字符串用 UNIX 的標(biāo)準(zhǔn)加密 DES 模塊加密。這是單向的加密函數(shù),無法解密。欲比對字符串,將已加密的字符串的頭二個字符放在 salt 的參數(shù)中,再比對加密后的字符串。語法為:string crypt(string str, string [salt]);
可逆轉(zhuǎn)的加密為:base64_encode()、urlencode() 相對應(yīng)的解密函數(shù):base64_decode() 、urldecode()
base64_encode() 將字符串以 MIME BASE64 編碼。此編碼方式可以讓中文字或者圖片也能在網(wǎng)絡(luò)上順利傳輸。語法為string base64_encode(string data); 它的解密函數(shù)為:string base64_decode(string encoded_data); 將復(fù)回原樣
urlencode() 將字符串以 URL 編碼。例如空格就會變成加號。語法為:string urlencode(string str);
它的解密函數(shù)為:string urldecode(string str); 將復(fù)回原樣
看段代碼:
復(fù)制代碼 代碼如下:
<?php
define("str","墨劍");
echo 'md5 加密后的結(jié)果為:'.md5(str).'<br>';//md5 加密
echo 'crypt加密后的結(jié)果為:'.crypt(str,str).'<br>';// crypt加密
$base64encode=base64_encode(str);// base64_encode() 加密
echo 'base64_encode加密后的結(jié)果為:'.$base64encode.'<br>';
echo 'base64_decode解密后的結(jié)果為:'.base64_decode($base64encode).'<br>'; //base64_decode()解密
$urlencode=urlencode(str); //urlencode() 加密
echo 'urlencode加密后的結(jié)果為:'.$urlencode.'<br>';
echo 'urldecode解密后的結(jié)果為:'.urldecode($urlencode).'<br>';//urldecode() 解密
?>
輸出的結(jié)果為:
md5 加密后的結(jié)果為:ea796af15c74e90faeba49576fa7984b
crypt加密后的結(jié)果為:墨ylCzgTtYXPs
base64_encode加密后的結(jié)果為:xKu9ow==
base64_decode解密后的結(jié)果為:墨劍
urlencode加密后的結(jié)果為:%C4%AB%BD%A3
urldecode解密后的結(jié)果為:墨劍
您可能感興趣的文章:
- php使用crypt()函數(shù)進(jìn)行加密
- php基于mcrypt的加密解密實(shí)例
- PHP加密擴(kuò)展庫Mcrypt安裝和實(shí)例
- PHP mcrypt可逆加密算法分析
- PHP 加密/解密函數(shù) dencrypt(動態(tài)密文,帶壓縮功能,支持中文)
- php結(jié)合md5實(shí)現(xiàn)的加密解密方法
- php實(shí)現(xiàn)MD5加密16位(不要默認(rèn)的32位)
- php結(jié)合md5的加密解密算法實(shí)例
- 利用PHP腳本在Linux下用md5函數(shù)加密字符串的方法
- PHP常見加密函數(shù)用法示例【crypt與md5】
相關(guān)文章
PHP中4個加速、緩存擴(kuò)展的區(qū)別和選用建議
這篇文章主要介紹了PHP中eAccelerator、memcached、xcache、APC等4個加速、緩存擴(kuò)展的區(qū)別和選用建議,需要的朋友可以參考下2014-03-03
PHP實(shí)現(xiàn)函數(shù)內(nèi)修改外部變量值的方法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)函數(shù)內(nèi)修改外部變量值的方法,涉及php全局變量、傳值調(diào)用、引用等相關(guān)操作技巧,需要的朋友可以參考下2018-12-12
php class中self,parent,this的區(qū)別以及實(shí)例介紹
我容易混淆public,private,protected,還容易混淆this,self這些東西。前面已經(jīng)寫了一篇關(guān)于public,private,protected 博文了,下面來說一下this,self,parent的用法2013-04-04
PHP使用PDO實(shí)現(xiàn)mysql防注入功能詳解
這篇文章主要介紹了PHP使用PDO實(shí)現(xiàn)mysql防注入功能,結(jié)合實(shí)例形式詳細(xì)分析了PHP使用pdo操作mysql防注入原理、實(shí)現(xiàn)方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-12-12
PHP實(shí)現(xiàn)XML與數(shù)據(jù)格式進(jìn)行轉(zhuǎn)換類實(shí)例
這篇文章主要介紹了PHP實(shí)現(xiàn)XML與數(shù)據(jù)格式進(jìn)行轉(zhuǎn)換類,實(shí)例分析了php進(jìn)行XML格式數(shù)據(jù)的方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07

