PHP如何產生隨機字串?這篇文章就跟大家介紹PHP使用rand()函數 雜湊函數產生隨機字串的方法,以下就開始具體內容,希望對大家有幫助。
在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中文網其他相關文章!