⑴ php數組值取隨機數
用array_rand()函數就可以實現。
array_rand():從數組中隨機選出一個或多個元素,並返回。
語法:array_rand(array,number)
array:必需。規定輸入的數組參數。
number:可選。默認是 1。規定返回多少個隨機的元素。
例子:$a = ['a','b','c'];//定義一個二維數組
$b = $array_rand($a,1);//從數組a里隨機選取一個元素賦值給變數b。
⑵ 請教一下前輩php如何從一個數組中隨機取五個數據(下標和值都要)
給你寫個函數:
functionhaha($arr){
$keys=array_rand($arr,5);
$re=array();
foreach($keysas$v){
$re[$v]=$arr[$v];
}
return$re;
}
⑶ php怎麼樣從一個列表裡面隨機一個值
首先告訴你,樓上有的人說的不對,array_rand()函數返回的是數組的鍵值,即以下代碼:
$a = array("aaaaa","bbbbb","ccccc","ddddd","eeeee");
$b = array_rand($a);
echo $b;
他們隨機返回的是0,1,2,3,4中的任意一個數字。
當然,如果將$a改成$a = array("aaaaa"=>"隨便什麼","bbbbb"=>"隨便什麼","ccccc"=>"隨便什麼","ddddd"=>"隨便什麼","eeeee"=>"隨便什麼");則可以達到目的。
--------------------------------------------------------------------------------------
再談談另一種方法:shuttle()函數把數組中的元素按隨機順序重新排列。
$a = array("aaaaa","bbbbb","ccccc","ddddd","eeeee");
shuttle($a);
echo $a[0];
這種方法可成功達到目的,但應注意數組的鍵值!shuttle()函數為數組中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序。所以不論原來數組的鍵值是什麼,重新排序後鍵值已經發生改變,所以echo $a[0];中的0不能寫成以前數組的鍵值(當然其他數字也可以,只要不超過數組長度即可)
⑷ php 數組中隨機抽取十個組成新數組
shuffle($array);
將數組打亂,然後取前10個就行
⑸ php 如何實現,從數組中隨機取出數據,還要保證下次不會再取到
$a
=
range(1,100);
function
get_one(&$a){
if(count($a)>=1){
$key=array_rand($a,1);
$value=$a[$key];
unset($a[$key]);
return
$value;
}else{
return
"都取光了";
}
}
//每次取值可以直接
echo
"取到的值:".get_one($a);
echo
"<br>還剩:".count($a);
⑹ php 如何實現,從數組中隨機取出數據,還要保證下次不會再取到
每次隨機取出一個數之後,應該刪除這個數,才可以保證下次不取到它。例如你的100個數,第一次隨機取一個,然後刪除它,下次再剩餘的99裡面隨機取一個,這樣就不會重復了。
寫代碼沒難度了吧,你寫寫看,如果希望我繼續回答,建議你粘貼一下你寫的內容,不完整或者錯誤沒關系,至少你去思考了的,而且我看了代碼知道你錯在哪裡,才可以針對性的講解。
沒空等你寫代碼了,我把我的貼出來,今天晚上要熬夜加班,沒空回來看帖子了,不好意思,希望你認真學習。
<?php
$arr=array();
for ($i=1;$i<=100;$i++) array_push($arr,$i);
print_r($arr);
for ($i=1;$i<=100;$i++){
$n=rand(0,count($arr)-1);//產生隨機數,最小值是0,最大值是數組剩餘元素可數-1
echo $arr[$n]," ";//顯示取的隨機數
array_slice($arr,$n,1);//刪除剛才取到的數
}
?>
⑺ php從數組中隨機取幾個元素組成新的數組
1、
$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array_rand($a,5);
foreach($b as $k=>$v){
$arr[]=$a[$v];
}
print_r($arr);
2、
$arr=$a;
shuffle($arr);
$arr=array_slice($arr,0,5);
print_r($arr);
⑻ php中怎樣從一個數組中隨機取一個元素出來呢
用array_rand()函數吧,它可以從一個數組中隨機取一個或者多個下標出來,有了下標,就可以從原數組拿到對應的元素了。它的用法也很簡單:array_rand($arr[,
$num])$arr
==
用來取元素的數組$num
==
隨機取下標的個數其中第二個參數
$num
是可選的,默認為1
。注意:它的返回值在第二個參數大於
1
的時候是一個數組;當第二個參數不設或者傳值
1
的時候是一個下標。簡單的示例代碼如下:1、第二個參數不傳值的情況;$arr
=
Array('a',
'b');$rndKey
=
array_rand($arr);echo
$arr[$rndKey];//輸出
a
或者
b2、第二個參數傳值大於
1
的情況;$arr
=
Array('a',
'b',
'c',
'd');$rndKey
=
array_rand($arr,
2);print_r($rndKey]);//輸出一個隨機key的數組
⑼ php從數組中隨機取幾個元素組成新的數組
$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array_rand($a,5);
print_r($b);
⑽ php中如何在數組中隨機抽取n個數據的值
array_rand()
在你想從數組中取出一個或多個隨機的單元時相當有用。它接受
input
作為輸入數組和一個可選的參數
num_req,指明了你想取出多少個單元
-
如果沒有指定,默認為
1。
如果你只取出一個,array_rand()
返回一個隨機單元的鍵名,否則就返回一個包含隨機鍵名的數組。這樣你就可以隨機從數組中取出鍵名和值。
主要是用array_rand()方法