從陣列中隨機取出一個或多個隨機鍵

array_rand

(PHP 4, PHP 5, PHP 7, PHP 8)

array_rand從陣列中隨機取出一個或多個隨機鍵

說明

array_rand(array $array, int $num = 1): int|string|array

從陣列中取出一個或多個隨機的單元,並返回隨機條目對應的鍵(一個或多個)。 它使用了偽隨機數產生演算法,所以不適合密碼學場景。

參數

array

輸入的陣列。

num

指定要取出的單元數量。

返回值

如果只取出一個,array_rand() 返回隨機單元的鍵名。 否則就返回包含隨機鍵名的陣列。 完成後,就可以根據隨機的鍵獲取陣列的隨機值。 如果返回的是包含隨機鍵名的陣列,陣列單元的順序按照鍵名在原陣列中的順序排列。 取出數量如果超過 array 的長度,就會導致 E_WARNING 錯誤,並返回 NULL。

更新日誌

版本 說明
7.1.0 內部隨機化演算法已從 libc rand 函式更改為使用 » 梅森旋轉演算法(Mersenne Twister) 隨機數產生器。

範例

示例 #1 array_rand() 例子

<?php
$input 
= array("Neo""Morpheus""Trinity""Cypher""Tank");
$rand_keys array_rand($input2);
echo 
$input[$rand_keys[0]] . "\n";
echo 
$input[$rand_keys[1]] . "\n";
?>

參見

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *