1. 程式人生 > >PHP 產生不重複隨機數的方法(一)

PHP 產生不重複隨機數的方法(一)

1.首先通過rand()函式獲取一個長度固定的陣列。

例如:$numbers = rand(6,50);

這條語句是可以產生6到50個數字,是按順序排列的。

接著我們需要打亂這個順序,產生45個無序的陣列成一個數組,這時就需要用到php中的shuffle()函式。

例如:shuffle($numbers);

這時45個數字將呈現無序狀態。

最後,通過php中的array_slice()函式擷取你需要的隨機數的個數。

$result = array_slice($numbers,0,6);

這裡說明一下,$numbers是你要擷取的陣列,0是擷取陣列的小標,6是你要擷取陣列的個數。

相關推薦

PHP 產生重複隨機數方法

1.首先通過rand()函式獲取一個長度固定的陣列。 例如:$numbers = rand(6,50); 這條語句是可以產生6到50個數字,是按順序排列的。 接著我們需要打亂這個順序,產生45個無序的陣列成一個數組,這時就需要用到php中的shuffle()函式。 例如:s

PHP產生重複隨機數的5個方法總結

方法一: <?php  $numbers = range (1,50);  //shuffle 將陣列順序隨即打亂  shuffle ($numbers);  //array_slice 取該陣列中的某一段  $num=6;  $result = a

分享一個php產生重複隨機數

public function getrandnum($allsubnum,$rulesubnum) { $arr = array(); function thearr($arr,$allsubnum,$rulesubnum) { if(count($arr)<$rulesubnum){ $th

Java產生重複隨機數方法

關於生成Java不重複的隨機數: import java.util.*;  publicclass Test...{  publicstaticvoid main(String[] args)...{  //生成 [0-n) 個不重複的隨機數         / st 用

生成重複隨機數序列Java

從1到n之間抽取出k個不重複的隨機數,用Math.random()實現的話,可參照下面的程式碼。 int r = (int) (Math.random() * n), 生成下標,據此下標,去到numbers數組裡拿到隨機數。然後將numbers[r]的值設定成

產生重複隨機數方法

      我在青鳥學習的時候,遇到過這樣的問題。老師給的方法感覺有點不太好。 產生的數是從大到小排列的,感覺不太舒服。在網上也搜過一些。也沒有得到 滿意答案(可能因為自己沒有看懂,或方法不對吧)。       經過自己的努力,終於有了答案,拿出來和大家分享。各位老大,哪裡有

我的學習方法

職位 代碼 提升自己 語言 做什麽 工資 分配 需要 修正 (本文引用有點亂,大部分都是引用別人的觀點,但是記錄的時候沒記從哪搞的,所以這篇就只好先這樣記著了。。。以後一定記得標明引用地點) 重復性工作占了一大半,周末要加班,怎麽勞逸結合提升自己?既然是重復性工作,就想辦法

php面向對象編程

沒有 block 可能 一道 ces 描述 pla add 實例 類與對象關系: 類就像一個人類的群體 我們從類中實例化一個對象 就像是制定一個人。 面向對象程序的單位就是對象,但對象又是通過類的實例化出來的,所以我們首先要做的就是如何來聲明類, 做出來一個類很容

hibernate框架在eclipse下的配置方法

java、 sql數據庫 文件目錄 測試表 any 配置 包名 ive 當我 一、ORM O:object 對象 R:Realtion 關系(關系型數據庫) M:Mapping 映射 ORM:對象關系型映射   目前流行的編程語言,如Java、C# ,它們都是面向對象的編程

第三章 深入內觀的方法

穩定 photo sig 認識 他會 試驗 是什麽 忘記 謙虛 http://blog.sina.com.cn/s/blog_16697cb1a0102wxh7.html 第三章 深入內觀的方法(一) 歡迎來這裏禪修,非常高興看見你們。我告訴過你們:我所見過最美好

Web網站的測試流程和方法

不同的 ui測試 放置 有時 測試流程 數據 測試的 雲測 切換 近期,Alltesting的眾測平臺  有不少web網站的功能測試項目,像:  農事GERP種植系統   雲測試平臺   頭號專家網項目第三輪功能測試   於是,有些新加入眾測平臺的

測試人員必知的快速測試方法.

軟件測試 快速測試 測試方法 對有些測試經驗的測試人士來說,都有總結或掌握一些小眾的測試技巧。而快速測試是一組基於風險的測試方法,是針對某些常見的軟件缺陷,實施專項攻擊,一般不需要大量的測試時間,只了解產品基本情況就可以在短時間內在發現一批錯誤 。以下是測試專家James Bachd 在快速軟件測

各開發語言的程序加密方法

加密從各個開發語言出發,對每個開發語言的角度對加密方法做一些闡述。這篇主要講述lua、erlang、perl、ruby語言的加密方法。加密所需:Virbox LM SDK最新版Virbox Protector加殼工具,DS Protector 文檔下載:http://dl.video.virbox.com/v

PHP多進程系列筆記

could 僵屍進程 代碼 得到 擴展 系統 需要 all RR 本系列文章將向大家講解pcntl_*系列函數,從而更深入的理解進程相關知識。 PCNTL在PHP中進程控制支持默認是關閉的。您需要使用 --enable-pcntl 配置選項重新編譯PHP的 CGI或CLI

JDBC資料庫連線池連線資料庫及資料庫操作DAO層設計通用更新及查詢方法

該篇文章介紹了資料庫連線池獲取資料庫連線以及資料庫操作的基本使用,然後主要提供了java專案案例中dao層的一種設計,利用反射的原理定義了通用的查詢方法可以對應所有的表和例項。文章中的每段程式碼都提供了詳細的註釋及邏輯步驟 首先匯入資料庫連線的所需要的jar包:    

分頁技術原理與實現之分頁的意義及方法

轉載自https://www.jb51.net/article/86326.htm。 什麼是分頁技術  分頁,是一種將所有資料分段展示給使用者的技術.使用者每次看到的不是全部資料,而是其中的一部分,如果在其中沒有找到自習自己想要的內容,使用者可以通過制定頁碼或是翻頁的方式轉換可見內容,

Python 字串內建方法

以下方法只需要知道用法就行了,權當了解,不用硬背,以後需要用到的時候再回來看 說明: 一般方法中前面是is開頭的就是判斷來的,輸出不是True就是False,例如isalpha()方法 capitalize()方法:首字母大寫 In [1]: a='abc' In [2]: a.capit

Python 字符串內置方法

bcd 成功 對齊 code () dsw out 設置 匹配 以下方法只需要知道用法就行了,權當了解,不用硬背,以後需要用到的時候再回來看 說明: 一般方法中前面是is開頭的就是判斷來的,輸出不是True就是False,例如isalpha()方法 capitalize

資料視覺化方法

 資料視覺化可以提供對資料的直觀感受,這個有時是很難通過表格的形式把握到的。本文將介紹分類問題的視覺化方法。  資料視覺化的第一步就是獲取資料,下面是用“岩石vs水雷資料集”為例,展示資料獲取方法。 1 import pandas as pd 2 3 ta

前臺使用資料庫model和Html.BeginForm("action", "controller", FormMethod.Post)提交表單,在儲存到資料庫前對錶單項進行判斷的方法

前端: @model DBEF.XXX  @using (Html.BeginForm("action", "controller", FormMethod.Post))     {         @Html.Valid