這篇文章主要介紹了如何通過(guò)PHP返回給定個(gè)數(shù)的隨機(jī)字符,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、成都做網(wǎng)站與策劃設(shè)計(jì),順義網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:順義等地區(qū)。順義做網(wǎng)站價(jià)格咨詢:028-86922220
方法一:利用rand()函數(shù)
分析代碼
定義了一個(gè)字符串變量$strPol,里面包含全部需要的字符;
for循環(huán)的作用是控制隨機(jī)字符串的長(zhǎng)度;
在每次循環(huán)時(shí),利用rand(0, $max)
隨機(jī)生成一個(gè)數(shù)字(數(shù)字的范圍在0
~字符串$strPol的長(zhǎng)度-1
);
將隨機(jī)數(shù)字作為下標(biāo),取出字符串$strPol中的指定字符,并使用.=
拼接在一起,生成字符串
在上面的代碼中,調(diào)用getRandChar(20)
設(shè)置隨機(jī)字符串的長(zhǎng)度為20,因此輸出結(jié)果為:
不斷刷新,會(huì)發(fā)現(xiàn)每次輸出的不同
下面給大家介紹一下rand()函數(shù)。
rand(min,max)
會(huì)返回 min
與 max
之間(包括邊界值)的隨機(jī)整數(shù);如果省略這兩個(gè)參數(shù),則返回 0 到 RAND_MAX 之間的偽隨機(jī)整數(shù)。
方法2:substr()+str_shuffle() + mt_rand()函數(shù)
分析代碼:
定義了一個(gè)字符串變量$strPol
,里面包含全部需要的字符;
利用str_shuffle($strPol)
打亂字符串,利用mt_rand(0, $max)
隨機(jī)生成一個(gè)數(shù)字(數(shù)字的范圍在0
~字符串$strPol的長(zhǎng)度-$length-1
);
使用substr()
函數(shù)以隨機(jī)數(shù)字為開(kāi)始位置來(lái)截取已打亂的字符串,返回$length
長(zhǎng)度的子串,這個(gè)子串就是要返回的隨機(jī)字符串。
在上面的代碼中,調(diào)用getRandChar(15)
設(shè)置隨機(jī)字符串的長(zhǎng)度為15,因此輸出結(jié)果為:
不斷刷新,會(huì)發(fā)現(xiàn)每次輸出的不同
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何通過(guò)PHP返回給定個(gè)數(shù)的隨機(jī)字符”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!