配列からランダムな値を取得するために静的な長さを取得したい。
PHPコード:
この以下のコードでは、配列から5つのランダムな値を取得する方法を教えてください。
$arr_history = array(23, 44,24,1,345,24,345,34,4,35,325,34,45,6457,57,12);
$lenght=5;
for ( $i = 1; $i < $lenght; $i++ )
echo array_rand($arr_history);
配列からランダムな値を取得するために静的な長さを取得したい。
PHPコード:
この以下のコードでは、配列から5つのランダムな値を取得する方法を教えてください。
$arr_history = array(23, 44,24,1,345,24,345,34,4,35,325,34,45,6457,57,12);
$lenght=5;
for ( $i = 1; $i < $lenght; $i++ )
echo array_rand($arr_history);
を使用array_rand()
して 5 つのランダム キーを選択し、それらを使用して配列キーと交差させることができます。これにより、元の配列がそのまま保持されます。
$values = array_intersect_key($arr_history, array_flip(array_rand($arr_history, 5)));
または、最初に配列をその場でシャッフルしてから、最初または最後の 5 つのエントリを取り出すことができます。
shuffle($arr_history);
$values = array_slice($arr_history, -5);
これには、重複することなく連続して複数のセットを取り出すことができるという利点があります。
これを試して :
$rand_value = array_rand($arr_history);
echo $rand_value;
参照: http://php.net/manual/en/function.array-rand.php
または使用:
shuffle($arr_history)
これにより、配列の順序がシャッフルされます: http://php.net/manual/en/function.shuffle.php