在PHP中有一些函數,如md5(),sha1()和hash(),可用于根據某些算法來對字符串進行哈希(Hash)處理。哈希函數可以將一個字符串作為參數,然后返回一個哈希字符串。
首先我們通過一個簡單的是來看看rand()函數+哈希函數如何生成隨機字符串。
?php header( content-type:text/html;charset=utf-8 echo PHP生成隨機字符串: br br $str=rand(); $md5=md5($str); $sha1=sha1($str);$hash=hash( gost ,$str);echo md5()函數: br echo $md5; echo br br echo sha1()函數 br echo $sha1; echo br br echo hash()函數 br echo $hash; echo br br ?
效果圖:
當我們不斷刷新頁面,則輸出的字符串是不同的,動態效果:
下面我們來介紹一下使用到的php函數。
rand()函數:可以隨機生成一個整數,它可以同時接受兩個參數(min,max)用來限制隨機的范圍。
md5()函數:對string參數進行MD5算法的處理,返回一個MD5 散列。它有兩個參數,分別為
$string參數:必需值,需要計算的字符串。
$raw參數:可選值,定義輸出格式,可能有的值為:TRUE--輸出原始 16 字符二進制格式;FALSE--輸出32 字符十六進制數,默認值。
sha1()函數:對string參數進行美國 Secure Hash 算法 1處理,返回一個SHA-1 散列。
它同樣有兩個參數(參考md5()函數,$raw參數的TRUE值輸出原始 20 字符二進制格式,FALSE值輸出40 字符十六進制數)
hash()函數:對string參數進行特點的算法處理,返回一個散列字符串。
它最多需要三個參數,如下所示:
$algo參數:必需值,定義需要使用散列算法。PHP共有46個注冊哈希算法,其中“sha1”,“sha256”,“md5”,“haval160,4”是最受歡迎的算法。
$string參數:必需值,定義需要進行哈希處理的字符串。
$getRawOutput參數:可選參數,定義輸出格式。TRUE值,表示函數以原始二進制格式返回哈希值;FALSE值,表示函數以小寫十六進制字符序列返回哈希值。
總結:以上就是本篇文章的全部內容,希望能對大家的學習有所幫助。
以上就是PHP如何生成隨機字符串?使用哈希函數的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答