php 使用mr rand生成 隨機字串

2021-05-27 16:09:56 字數 664 閱讀 4469

通常情況下,當我們要生成乙個隨機字串時,總是先建立乙個字元池,然後用乙個迴圈和mt_rand()或rand()生成php隨機數,從字元池中隨機選取字元,最後拼湊出需要的長度。

本文將以兩種方法介紹生成隨機字串的辦法。

第一種辦法是要建立字元池。

而第二種辦法甚至省去了建立字元池的建立。

function randomkeys($length)

-_=+)(*&^%$£!';    //字元池

for($i=0; $i<$length; $i++)

;    //生成php隨機數

}return $key;

}echo randomkeys(8);

這個php隨機函式能生成xc*=z~7l這樣的字串,夠隨機!

現在介紹另一種用php生成隨機數的方法:利用chr()函式,省去建立字元池的步驟。

function randomkeys($length)

return $output;

}echo randomkeys(8);

在第二個php隨機函式裡

,先用mt_rand()生成乙個介於33到126之間的php隨機數,然後用chr()函式轉化成字元。檢視ascii碼表就會發現,33到126代表的正是第乙個函式中字元池裡的所有字元。第二個函式和第乙個函式功能相同,而且更簡潔。

PHP生成隨機數

function getrandstr length return randstr number getrandstr 6 echo number function make password length 8 在 chars 中隨機取 length 個陣列元素鍵名 keys array rand ...

php生成隨機密碼

隨機密碼生成 post number 0 數字 0 不啟用 1 啟用 post lowercase 0 小寫字母 post uppercase 0 大寫字母 post punctuation 1 特殊符號 post repeat 0 字元 1重複 0不重複 post length 31 密碼長度 p...

php生成隨機數

生成1 10之間的隨機數,不重複。方法一 用shuffle函式。arr range 1,10 shuffle arr foreach arras values 方法二 用array unique函式.arr array while count arr 10 echoimplode arr 方法三 用...