Как вытащить случайное значение из массива?

Мне назвали массив $ran = array(1,2,3,4);

Я должен вытащить случайное значение из этого массива и сохранить его в переменной, как я могу сделать это?

112
задан Script47 17 July 2019 в 12:17
поделиться

6 ответов

Вы также можете просто:

$k = array_rand($array);
$v = $array[$k];

Это способ сделать это, когда у вас есть ассоциативный массив.

218
ответ дан 24 November 2019 в 02:45
поделиться

Мне была нужна одна версия строки для короткого массива:

($array = [1, 2, 3, 4])[mt_rand(0, count($array) - 1)]

или если массив фиксируется:

[1, 2, 3, 4][mt_rand(0, 3]
0
ответ дан 24 November 2019 в 02:45
поделиться

Вы получаете случайное число из массива следующим образом:

$randomValue = array_rand($rand,1);
-5
ответ дан 24 November 2019 в 02:45
поделиться

Вы можете использовать mt_rand ()

$random = $ran[mt_rand(0, count($ran) - 1)];

Это также пригодится как функция, если вам нужно значение

function random_value($array, $default=null)
{
    $k = mt_rand(0, count($array) - 1);
    return isset($array[$k])? $array[$k]: $default;
}
22
ответ дан 24 November 2019 в 02:45
поделиться
$rand = rand(1,4);

или, в частности, для массивов:

$array = array('a value', 'another value', 'just some value', 'not some value');
$rand = $array[ rand(0, count($array)-1) ];
4
ответ дан 24 November 2019 в 02:45
поделиться

PHP предоставляет функцию только для этого: array_rand ()
http://php.net/manual/en/function.array -rand.php

$ran = array(1,2,3,4);
$randomElement = $ran[array_rand($ran, 1)];
30
ответ дан 24 November 2019 в 02:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: