成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

什么是PHP隨機(jī)函數(shù)-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“什么是PHP隨機(jī)函數(shù)”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“什么是PHP隨機(jī)函數(shù)”吧!

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),欽北企業(yè)網(wǎng)站建設(shè),欽北品牌網(wǎng)站建設(shè),網(wǎng)站定制,欽北網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,欽北網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

二、前言

PHP是常見(jiàn)的腳本語(yǔ)言,主要是因?yàn)槠浜?jiǎn)單易學(xué),上手快,幾乎50%以上的Web程序都有PHP的身影(不完全統(tǒng)計(jì))。PHP為開(kāi)發(fā)這提供了豐富的函數(shù)和API接口,這使得我們能夠非常方便地使用其強(qiáng)大的內(nèi)置函數(shù)及擴(kuò)展,本文是《PHP也能干大事》系列的第二篇,主要總結(jié)PHP在隨機(jī)數(shù)生成器方面的知識(shí)。

三、PHP隨機(jī)函數(shù)

PHP隨機(jī)函數(shù)主要有rand、mt_rand、array_rand,還有隨機(jī)“排列”(打亂順序)的函數(shù)shuffle、str_shuffle,能夠產(chǎn)生ID的uniqid。

1、rand產(chǎn)生隨機(jī)數(shù):

<?php
$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$count = strlen($base);
$random = '';
for ($i=0; $i < 16; $i++) { 
 $random.=$base[rand(0,$count-1)];
}
echo $random;
?>

rand()函數(shù)是使用libc 的隨機(jī)數(shù)發(fā)生器生成隨機(jī)數(shù)的,一般較慢,且有不確定因素,建議使用mt_rand函數(shù)替代。

getrandmax()函數(shù)可以返回rand函數(shù)能夠產(chǎn)生的較大的隨機(jī)數(shù)(我的系統(tǒng)為32767),所以在設(shè)置rand函數(shù)第二個(gè)參數(shù)時(shí)不要超高getrandmax的返回值。

2、mt_rand產(chǎn)生隨機(jī)數(shù):

<?php
$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$count = strlen($base);
$random = '';
for ($i=0; $i < 16; $i++) { 
 $random.=$base[mt_rand(0,$count-1)];
}
echo $random;
?>

很多老的 libc 的隨機(jī)數(shù)發(fā)生器具有一些不確定和未知的特性而且很慢。PHP 的 rand() 函數(shù)默認(rèn)使用 libc 隨機(jī)數(shù)發(fā)生器。mt_rand() 函數(shù)是非正式用來(lái)替換它的。該函數(shù)用了 &raquo; Mersenne Twister 中已知的特性作為隨機(jī)數(shù)發(fā)生器,它可以產(chǎn)生隨機(jī)數(shù)值的平均速度比 libc 提供的 rand() 快四倍。強(qiáng)烈建議在開(kāi)發(fā)過(guò)程中使用mt_rand函數(shù)取代rand。

如果沒(méi)有提供可選參數(shù) min 和 max,mt_rand() 返回 0 到 mt_getrandmax() 之間的偽隨機(jī)數(shù)。例如想要 3到 20(包括 3 和 20)之間的隨機(jī)數(shù),用 mt_rand(3, 20)。

3、array_rand函數(shù)

<?php
$base = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9');
 
$random = '';
for ($i=0; $i < 16; $i++) { 
 $random.=$base[array_rand($base)];
}
echo $random;
?>

array_rand返回?cái)?shù)組中隨機(jī)的鍵值,有點(diǎn)類似mt_rand()函數(shù),其余的沒(méi)什么特殊的地方,靈活運(yùn)用而已。

4、shuffle函數(shù)


<?php
$base = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','0','1','2','3','4','5','6','7','8','9');
if(shuffle($base)){
 print_r($base);
}
?>

shuffle函數(shù)是打亂一個(gè)數(shù)組的序列,有點(diǎn)隨機(jī)的意思,這里就放在隨機(jī)函數(shù)里了。返回值為bool值,相當(dāng)于直接引用了原變量。

5、str_shuffle函數(shù)


<?php
$base = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
echo str_shuffle($base);
?>

這里str_shuffle的功能和shuffle的功能是類似的,不同的是返回值,str_shuffle的原字符串是不變的。

6、uniqid函數(shù)

<?php
echo uniqid();
//54f806528172f
?>

uniqid能夠產(chǎn)生的字符串,這個(gè)應(yīng)用的范圍可以相當(dāng)廣泛

到此,相信大家對(duì)“什么是PHP隨機(jī)函數(shù)”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)建站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

本文標(biāo)題:什么是PHP隨機(jī)函數(shù)-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://jinyejixie.com/article8/dcjoop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、定制開(kāi)發(fā)電子商務(wù)、營(yíng)銷型網(wǎng)站建設(shè)企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開(kāi)發(fā)
江门市| 通辽市| 平湖市| 隆子县| 尚志市| 莱州市| 尚志市| 汉源县| 大余县| 河曲县| 兴业县| 万荣县| 民县| 淮安市| 邻水| 朔州市| 南澳县| 花莲市| 富顺县| 合作市| 疏附县| 交口县| 全椒县| 桓台县| 张家港市| 大姚县| 余姚市| 西乌珠穆沁旗| 板桥市| 喜德县| 洛扎县| 江北区| 汨罗市| 盘锦市| 牟定县| 建湖县| 宜君县| 荆州市| 石柱| 彭州市| 密云县|