新聞中心
php中如何在數(shù)組中隨機抽取n個數(shù)據(jù)的值
array_rand()
成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)頁設(shè)計、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機版網(wǎng)站建設(shè))、成都響應(yīng)式網(wǎng)站建設(shè)公司、程序開發(fā)、網(wǎng)站優(yōu)化、微網(wǎng)站、微信小程序開發(fā)等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們在互聯(lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的成都網(wǎng)站設(shè)計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、網(wǎng)站設(shè)計、網(wǎng)絡(luò)營銷經(jīng)驗,集策劃、開發(fā)、設(shè)計、營銷、管理等多方位專業(yè)化運作于一體。
在你想從數(shù)組中取出一個或多個隨機的單元時相當有用。它接受
input
作為輸入數(shù)組和一個可選的參數(shù)
num_req,指明了你想取出多少個單元
-
如果沒有指定,默認為
1。
如果你只取出一個,array_rand()
返回一個隨機單元的鍵名,否則就返回一個包含隨機鍵名的數(shù)組。這樣你就可以隨機從數(shù)組中取出鍵名和值。
主要是用array_rand()方法
PHP 隨機1-100的數(shù) 看看誰能在最少的次數(shù)中抽到5次 99。
$flag?=?true;
$i?=?0;
while($flag){
$num?=?rand(1,100);
if($num==99){
$i++;
}
if($i==5){
$flag?=?false;
}
}
用php+mysql做一個題庫系統(tǒng),隨機抽取五百題左右生成考試卷,最有效率的做法是什么?
php里面有array_rand函數(shù),你要是一道題一道題的讀出來,或許也可以嘗試一下。但是要是一下子都讀出來,即便這個函數(shù)效率可以的話,隨機取出id數(shù)組,查詢 “where id in 數(shù)組” 就不如直接在數(shù)據(jù)庫里隨機抽取記錄。\x0d\x0a如何從數(shù)據(jù)表里隨機抽取記錄呢,想想辦法還是有一些,就是不知道效率如何。有的是說用max_id*rand(),那一條一條抽取還是可以的。怎么批量隨機抽取呢,可以試著排序,然后選取前500題,排序可以想辦法用一些函數(shù)(選取一些執(zhí)行效率高的),如何md5,sha1,這種。如果為了使結(jié)果更具有隨機性,可以把字段值再與一個隨機數(shù)運算一下。僅供參考。\x0d\x0a========================\x0d\x0a我想你還是用array_rand隨機抽500個id存到數(shù)組,然后遍歷數(shù)組吧。這樣也避免了題目重復(fù)。在數(shù)據(jù)庫里如果一次一條記錄隨機抽取,要考慮碰巧重復(fù)的問題。批量選取你就按上面我說的試試。
文章題目:php隨機抽數(shù)據(jù) php隨機ua
文章出自:http://www.ef60e0e.cn/article/doshpcp.html