欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

php取不重復(fù)隨機(jī)數(shù)的方法-創(chuàng)新互聯(lián)

這篇文章主要介紹了php取不重復(fù)隨機(jī)數(shù)的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)與策劃設(shè)計,樅陽網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:樅陽等地區(qū)。樅陽做網(wǎng)站價格咨詢:18980820575

php取不重復(fù)隨機(jī)數(shù)的方法:首先通過“mt_random($min,$max)”方法隨機(jī)取區(qū)間內(nèi)的一個值;然后通過兩次“key-value”交換實現(xiàn)不重復(fù)的隨機(jī)數(shù)即可。

php取不重復(fù)隨機(jī)數(shù)的方法

PHP中生產(chǎn)不重復(fù)隨機(jī)數(shù)的方法

PHP內(nèi)置函數(shù)不重復(fù)隨機(jī)數(shù)

需求:要生成一個數(shù)組,這個數(shù)組里面有10個元素,都是整形,并且是1-60之間不重復(fù)的隨機(jī)數(shù)。

代碼:

代碼示例:

<?php   
function get_randoms($min,$max,$num){  
       $count = 0;  
       $res = array();  
       while($count<$num){  
    $res[] = mt_random($min,$max);  
    $res = array_flip(array_flip($res));   
    $count = count($res);  
        }  
        return $res;  
 }  
    
$result = get_randoms(1,60,10);  
?>

在這里 他用$count 結(jié)果數(shù)組的個數(shù),他在while 循環(huán)中 使得結(jié)果數(shù)組的個數(shù)小于 目標(biāo)個數(shù)。通過這樣,獲取到$count 是 目標(biāo)個數(shù) 的一個數(shù)組。

期間,每一個循環(huán)中,通過mt_random($min,$max),隨機(jī)出區(qū)間內(nèi)的一個值,存放到數(shù)組$res中,然后通過兩次key-value 交換,也就是通過數(shù)組key的唯一性,使得做到不重復(fù)。

我看了這個邏輯的代碼之后,我不禁陷入了深思,假如說當(dāng)你不知道array_filp 函數(shù)的時候你怎么做?

說白了就是用key的唯一性,使得隨機(jī)數(shù)不會存在重復(fù)。那么我們能不能將這個問題簡單化處理呢?

代碼示例:

<?php   
function get_randoms($min,$max,$num){  
   $count = 0;  
   $res = array();  
   while($count<$num){  
   $key = mt_random($min,$max);  
   $res[$key] = $key;  
   $count = count($res);  
       }  
       return $res;  
}  
$result = get_randoms(1,60,10);  
?>

這樣完全是單獨的通過數(shù)組key的唯一性  解決了這個問題。根本就不會用到array_flip。

總結(jié):

1,因為php提供了大量的內(nèi)置函數(shù),他們的執(zhí)行效率都很高。在遇到問題的時候,盡可能去用它去解決問題。這樣方便而且快速。

2,php 提供了大量的內(nèi)置函數(shù),執(zhí)行效率也很高,但是,雖然效率高,還是需要時間去執(zhí)行的。

在遇到問題的時候,不要盲目的去做,可以先看清處理方法的本質(zhì),以便于巧妙的實現(xiàn)他。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享php取不重復(fù)隨機(jī)數(shù)的方法內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!

本文標(biāo)題:php取不重復(fù)隨機(jī)數(shù)的方法-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://chinadenli.net/article24/dhjjce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、域名注冊網(wǎng)站制作、品牌網(wǎng)站建設(shè)、微信公眾號定制網(wǎng)站

廣告

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

網(wǎng)站優(yōu)化排名