Função array_rand
A função array_rand retorna uma chave aleatória
de um array. O primeiro parâmetro especifica o
array, e o segundo parâmetro opcional
indica quantas chaves aleatórias devem ser
retornadas. Se não for especificado - é retornada
uma chave, e se for especificado - a quantidade informada
de chaves na forma de um array.
Sintaxe
array_rand(array $array, int $num = 1): int|string|array
Exemplo
Neste exemplo, a função retornará uma chave aleatória do array:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
echo array_rand($arr);
?>
Resultado da execução do código:
'c'
Exemplo
Vamos retornar um elemento aleatório do array, conhecendo a chave aleatória:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
$key = array_rand($arr);
echo $arr[$key];
?>
Resultado da execução do código:
3
Exemplo
Vamos definir o segundo parâmetro com o valor
3 - neste caso, a função retornará um array
com 3 chaves aleatórias (3 chaves -
pois o segundo parâmetro é igual a 3):
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
$keys = array_rand($arr, 3);
var_dump($keys);
?>
Resultado da execução do código:
['a', 'b', 'e']