(PHP 4, PHP 5, PHP 7, PHP 8)
array_rand — Выбирает один или несколько случайных ключей из массива
$array
, int $num
= 1): int|string|arrayВыбирает одно или несколько случайных значений из массива. Возвращает ключ (или ключи) данных случайных элементов.
Функция не создаёт криптографически защищённые значения и не должна использоваться для криптографических целей или целей, требующих, чтобы возвращаемые значения были недоступны для разгадывания.
Если требуется криптографически безопасная случайная последовательность, Random\Randomizer может использоваться с движком Random\Engine\Secure. Для простых случаев использования функции random_int() и random_bytes() предоставляют удобный и безопасный API, поддерживаемый CSPRNG операционной системы.
array
Входной массив.
num
Определяет количество выбираемых элементов.
Если вы выбираете только одно значение, функция array_rand()
возвращает ключ, соответствующий этому значению. В обратном случае, она возвращает
массив ключей, соответствующих случайным значениям. Это сделано для того, чтобы дать
возможность выбрать из массива как случайные значения, так и случайные ключи. Если возвращается несколько ключей,
они будут возвращены в том порядке, в котором они присутствовали в исходном массиве.
Попытка выбрать больше элементов, чем есть в массиве, сгенерирует ошибку
уровня E_WARNING
и вернёт NULL.
Версия | Описание |
---|---|
7.1.0 | Внутренний алгоритм получения случайных чисел изменён с функции rand библиотеки libc на генератор на базе » Вихря Мерсенна. |
Пример #1 Пример использования array_rand()
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>