php數(shù)組函數(shù)序列 之shuffle()和array_rand() 隨機(jī)函數(shù)使用介紹
更新時間:2011年10月29日 22:56:47 作者:
shuffle與array_rand定義和用法,需要的朋友可以參考下。
shuffle()定義和用法
shuffle() 函數(shù)把數(shù)組中的元素按隨機(jī)順序重新排列。
若成功,則返回 TRUE,否則返回 FALSE。
注釋:本函數(shù)為數(shù)組中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序。
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函數(shù)給隨機(jī)數(shù)發(fā)生器播種,現(xiàn)已被自動完成。
語法
shuffle(array) 參數(shù) 描述
array 必需。規(guī)定要使用的數(shù)組。
例子
<?php
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse");
shuffle($my_array); print_r($my_array);
?>
輸出:
Array ( [0] => Cat [1] => Horse [2] => Dog )
array_rand()定義和用法
array_rand() 函數(shù)從數(shù)組中隨機(jī)選出一個或多個元素,并返回。
第二個參數(shù)用來確定要選出幾個元素。如果選出的元素不止一個,則返回包含隨機(jī)鍵名的數(shù)組,否則返回該元素的鍵名。
注釋:如果指定array_rand()函數(shù)抽取的索引個數(shù)大于1,那么不管抽取的是數(shù)字索引數(shù)組還是關(guān)聯(lián)數(shù)組,都將取得原數(shù)組的key,并放在一個新的索引數(shù)組中。
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函數(shù)給隨機(jī)數(shù)發(fā)生器播種,現(xiàn)已被自動完成。
語法
array_rand(array,number) 參數(shù) 描述
array 必需。規(guī)定輸入的數(shù)組參數(shù)。
number 可選。默認(rèn)是 1。規(guī)定返回多少個隨機(jī)的元素。
例子 1
<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
print_r(array_rand($a,1));
?>
輸出:
b
例子 2
帶有字符串鍵的數(shù)組:
<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
print_r(array_rand($a,2));
?>
輸出:
Array ( [0] => c [1] => b )
shuffle() 函數(shù)把數(shù)組中的元素按隨機(jī)順序重新排列。
若成功,則返回 TRUE,否則返回 FALSE。
注釋:本函數(shù)為數(shù)組中的單元賦予新的鍵名。這將刪除原有的鍵名而不僅是重新排序。
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函數(shù)給隨機(jī)數(shù)發(fā)生器播種,現(xiàn)已被自動完成。
語法
shuffle(array) 參數(shù) 描述
array 必需。規(guī)定要使用的數(shù)組。
例子
復(fù)制代碼 代碼如下:
<?php
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse");
shuffle($my_array); print_r($my_array);
?>
輸出:
Array ( [0] => Cat [1] => Horse [2] => Dog )
array_rand()定義和用法
array_rand() 函數(shù)從數(shù)組中隨機(jī)選出一個或多個元素,并返回。
第二個參數(shù)用來確定要選出幾個元素。如果選出的元素不止一個,則返回包含隨機(jī)鍵名的數(shù)組,否則返回該元素的鍵名。
注釋:如果指定array_rand()函數(shù)抽取的索引個數(shù)大于1,那么不管抽取的是數(shù)字索引數(shù)組還是關(guān)聯(lián)數(shù)組,都將取得原數(shù)組的key,并放在一個新的索引數(shù)組中。
注釋:自 PHP 4.2.0 起,不再需要用 srand() 或 mt_srand() 函數(shù)給隨機(jī)數(shù)發(fā)生器播種,現(xiàn)已被自動完成。
語法
array_rand(array,number) 參數(shù) 描述
array 必需。規(guī)定輸入的數(shù)組參數(shù)。
number 可選。默認(rèn)是 1。規(guī)定返回多少個隨機(jī)的元素。
例子 1
復(fù)制代碼 代碼如下:
<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
print_r(array_rand($a,1));
?>
輸出:
b
例子 2
帶有字符串鍵的數(shù)組:
復(fù)制代碼 代碼如下:
<?php
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
print_r(array_rand($a,2));
?>
輸出:
Array ( [0] => c [1] => b )
您可能感興趣的文章:
- MapTask階段shuffle源碼分析
- JavaScript實(shí)現(xiàn)shuffle數(shù)組洗牌操作示例
- 在python中以相同順序shuffle兩個list的方法
- php使用str_shuffle()函數(shù)生成隨機(jī)字符串的方法分析
- PHP 將數(shù)組打亂 shuffle函數(shù)的用法及簡單實(shí)例
- MapTask工作機(jī)制圖文詳解
- Java源碼解析HashMap的keySet()方法
- Java源碼解析HashMap的tableSizeFor函數(shù)
- Java源碼解析ConcurrentHashMap的初始化
- shuffle的關(guān)鍵階段sort(Map端和Reduce端)源碼分析
相關(guān)文章
實(shí)戰(zhàn)mysql導(dǎo)出中文亂碼及phpmyadmin導(dǎo)入中文亂碼的解決方法
因?yàn)橐驯緳C(jī)的gbk編碼的mysql數(shù)據(jù)庫導(dǎo)入到虛擬主機(jī)去,服務(wù)商只提供了phpmyadmin供你導(dǎo)入導(dǎo)出。2010-06-06PHP has encountered an Access Violation at 7C94BD02解決方法
PHP has encountered an Access Violation at 7C94BD02解決方法2009-08-08實(shí)現(xiàn)dedecms全站URL靜態(tài)化改造的代碼
實(shí)現(xiàn)dedecms全站URL靜態(tài)化改造的代碼...2007-03-03Laravel中使用FormRequest進(jìn)行表單驗(yàn)證方法及問題匯總
Laravel 5.0 帶來了FormRequests, 這是一種特殊的類型, 用于在提交表單時進(jìn)行數(shù)據(jù)的檢查和驗(yàn)證. 每個FormRequest類至少包含一個rules()方法, 這個方法返回一組驗(yàn)證規(guī)則. 除此之外還必須包含一個authorize()方法, 該方法返回一個布爾值, 代表是否允許用戶執(zhí)行本次請求.2016-06-06php中ftp_chdir與ftp_cdup函數(shù)用法
這篇文章主要介紹了php中ftp_chdir與ftp_cdup函數(shù)用法,以實(shí)例形式講述了PHP中的FTP目錄操作技巧,具有一定的借鑒價值,需要的朋友可以參考下2014-11-11