【PHP】配列の要素をランダムに取得するarray_rand関数の使い方

こんにちは!CODE CLUB965のKです!

今回は、PHPで配列の要素をランダムに取得する方法について説明します。

結論から言うと、配列の要素をランダムに取得するには、array_rand関数を使用します。
具体的な例を出しながら説明します。

array_rand関数の使い方

array_rand関数は、配列から1つ以上の配列の要素(キー)をランダムに取り出すことができる関数です。

array_rand関数は、以下のように記述します。

array_rand( 配列 [, int 要素数 ] )

第一引数には、対象の配列を指定します。
第二引数には、取り出す要素(キー)の数を指定します。

返り値は、ランダムに抽出した要素(キー)を返します。
要素が複数の場合は配列で返します。

<?php
 
$arr = ['A'=>'aaaa', 'B'=>'bbbb', 'C'=>'cccc', 'D'=>'dddd'];
 
//ランダムに要素(キー)を2つ取得する
$key = array_rand($arr, 2);
 
print_r($key);
 
?>

上記は、4つの要素がある連想配列から2つのランダムな要素のキー配列を取得するプログラムです。

実行すると以下のような結果が得られます。

Array
(
    [0] => C
    [1] => A
)

ランダムに2つの要素のキーが取得できていますね。

このようにarray_rand関数を使えば、配列の要素をランダムに取得できます。

ちなみに、第二引数に配列の要素数より大きな値を指定すると、エラーが発生するので注意して下さい。

最後に

今回紹介したarray_rand関数以外でもランダムに値を生成したり、取得する方法はありますので、また別の記事で紹介したいと思います。

それでは、また!

Follow me!