日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

php如何设置随机数字和字母,PHP获取随机数字和字母的方法大全

發(fā)布時(shí)間:2023/12/14 php 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php如何设置随机数字和字母,PHP获取随机数字和字母的方法大全 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

第一種方法

$FileID=date("Ymd-His") . '-' . rand(100,999);

//$FileID為? ?20100903-132121-908? ?這樣的的隨機(jī)數(shù)

?>

第二種方法

function randomkeys($length) {

$returnStr='';

$pattern = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ';

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

$returnStr .= $pattern {mt_rand ( 0, 61 )}; //生成php隨機(jī)數(shù)

}

return $returnStr;

}

echo randomkeys(4);

?>

第三種方法

//seed用戶自定義函數(shù)以微秒作為種子

function seed()

{

list($msec, $sec) = explode(' ', microtime());

return (float) $sec;

}

//播下隨機(jī)數(shù)發(fā)生器種子,用srand函數(shù)調(diào)用seed函數(shù)的返回結(jié)果

srand(seed());

//輸出產(chǎn)生的隨機(jī)數(shù),隨機(jī)數(shù)的范圍為10-100

echo rand(10,100);

?>

上面這個(gè)和下面這個(gè)不是沒什么不同嗎?都是隨機(jī)輸出10-100之間的數(shù),新人學(xué)習(xí),可能問(wèn)的太簡(jiǎn)單了呵呵

echo rand(10,100);

?>

mt_rand(10,100);

srand是種子,如果不設(shè)的話默認(rèn)是1

rand一般是利用種子做參數(shù)的一種固定的運(yùn)算

你試一下就知道了,不設(shè)種子或者設(shè)一個(gè)固定的種子,運(yùn)行rand

然后再關(guān)了瀏覽器再開,再運(yùn)行rand

你會(huì)發(fā)現(xiàn)結(jié)果一直是一樣的

先說(shuō)rand()函數(shù)吧,rand([int min], [int max]) 本函數(shù)從min和max之間取一個(gè)隨機(jī)數(shù)。若沒有指定隨機(jī)數(shù)的最大及最小范圍,本函數(shù)會(huì)自動(dòng)的從0到RAND_MAX中取一個(gè)隨機(jī)數(shù)。

但是如果只用rand()這個(gè)函數(shù),隨機(jī)數(shù)的亂度很大,每次在取隨機(jī)數(shù)之前最好使用srand()函數(shù),以配置新的隨機(jī)數(shù)種子。

解釋一下下面這個(gè)用法(一般都是這樣用這兩個(gè)函數(shù)的):

srand((double)microtime()*1000000);

$rand_number= rand();

microtime()返回了兩個(gè)值:當(dāng)前毫秒和時(shí)間戳,我們要提取隨機(jī)數(shù),只能從毫秒中取一個(gè)隨機(jī)數(shù),(double)microtime()就只返回當(dāng)前的毫秒值。

microtime()是以秒為單位的毫秒數(shù),因而值都是小數(shù),乘以1000000將其換算為整數(shù) 它們的工作流程如下:

(1):首先,給srand()提供一個(gè)”種子”;,它是一個(gè)unsigned_int類型的值。

(2):_然后,調(diào)用rand(),它會(huì)根據(jù)提供給srand()的值返回一個(gè)隨機(jī)數(shù)(范圍在_0~32767之間)

(3):根據(jù)需要多次調(diào)用rand(),不斷得到新的隨機(jī)數(shù)。

(4):無(wú)論什么時(shí)候可以給srand()提供一個(gè)新的“種子”,從而進(jìn)一步“隨機(jī)化”rand()的輸出結(jié)果。

總結(jié)

以上是生活随笔為你收集整理的php如何设置随机数字和字母,PHP获取随机数字和字母的方法大全的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。