PHP array_rand() 関数

ランダムなキー名を含む配列を返します:

<?php
$a=array("red","green","blue","yellow","brown");
$random_keys=array_rand($a,3);
echo $a[$random_keys[0]]."<br>";
echo $a[$random_keys[1]]."<br>";
echo $a[$random_keys[2]];
?>

実行例

定義と用法

array_rand() 関数は配列のランダムなキーを返します、または関数が複数のキーを返すことを指定した場合、ランダムなキーを含む配列を返します。

説明

array_rand() 関数は配列からランダムに1つまたは複数の要素を選択し、それを返します。

第2引数は、選択する要素の数を決定します。選択した要素が複数の場合、ランダムなキーを含む配列を返します。そうでない場合、その要素のキーを返します。

注釈:PHP 4.2.0 以降、ランダム数生成器に srand() または mt_srand() 関数を使用してシードする必要はなくなりました。今や自動的に完了されます。

文法

array_rand(array,number)
パラメータ 説明
array 必須。配列を指定します。
number オプション。返すランダムなキーの数を指定します。

技術的詳細

返り値: 配列からランダムなキーを返します、または関数が複数のキーを返すことを指定した場合、ランダムなキーを含む配列を返します。
PHP バージョン: 4+
更新履歴:

PHP 4.2.0 以降、ランダム数生成器は自動的にシードされます。

PHP 5.2.10 以降、キー名をシャッフルする結果配列は使用されなくなりました。

さらに多くの例

例 1

配列からランダムなキーを返します:

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
print_r(array_rand($a,1));
?>

実行例

例 2

ランダムな文字列キーを含む配列を返します:

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
print_r(array_rand($a,2));
?>

実行例