欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

array rand php

錢琪琛1年前8瀏覽0評論

在PHP中,經常需要隨機生成一些數據,比如從一個數組中隨機取出一個元素。這時,我們可以使用PHP提供的array_rand函數。

array_rand函數的作用是隨機取出數組中的一個或多個鍵值。它可以接受兩個參數,第一個參數是要隨機取值的數組,第二個參數是要隨機取出的個數。如果第二個參數不指定,默認只返回一個隨機鍵值。

// 隨機取出數組中一個鍵值
$arr = array("apple", "pear", "banana", "orange");
$key = array_rand($arr);
echo $arr[$key];
// 隨機取出數組中兩個鍵值
$keys = array_rand($arr, 2);
echo $arr[$keys[0]];
echo $arr[$keys[1]];

除了數組,我們還可以使用range函數生成一段范圍內的數字或字母數組。然后使用array_rand函數隨機取值。比如要隨機生成一個長度為6的驗證碼,就可以使用如下代碼:

$codeArr = array_merge(range('A', 'Z'), range('a', 'z'), range(0, 9));
$code = "";
for ($i=0; $i<6; $i++) {
$key = array_rand($codeArr);
$code .= $codeArr[$key];
}
echo $code;

需要注意的是,array_rand函數只返回隨機的鍵值,而不是鍵名。如果需要得到鍵名,可以使用array_keys函數:

$arr = array("apple" =>1, "pear" =>2, "banana" =>3, "orange" =>4);
$key = array_rand($arr);
$name = array_keys($arr)[$key];
echo $name;

除了array_rand函數,PHP還提供了shuffle函數用于隨機打亂數組元素的順序。與array_rand函數不同的是,shuffle函數直接修改原數組,不返回任何值:

$arr = array("apple", "pear", "banana");
shuffle($arr);
print_r($arr);

不難看出,shuffle函數實際上是將數組元素的位置打亂,而不是直接返回隨機的鍵值。

綜上,array_rand和shuffle是PHP中常用的隨機函數,它們可以方便地應用于數組的隨機取值和順序打亂。