Функción array_rand
La función array_rand devuelve una clave
aleatoria de un array. El primer parámetro especifica
el array, y el segundo parámetro opcional
indica cuántas claves aleatorias se deben
devolver. Si no se especifica, se devuelve
una clave, y si se especifica, se devuelve la cantidad
indicada de claves en forma de array.
Sintaxis
array_rand(array $array, int $num = 1): int|string|array
Ejemplo
En este ejemplo, la función devolverá una clave aleatoria del array:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
echo array_rand($arr);
?>
Resultado de ejecutar el código:
'c'
Ejemplo
Obtengamos un elemento aleatorio del array, conociendo la clave aleatoria:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
$key = array_rand($arr);
echo $arr[$key];
?>
Resultado de ejecutar el código:
3
Ejemplo
Establezcamos el segundo parámetro en el valor
3 - en este caso la función devolverá un array
de 3 claves aleatorias (3 claves -
ya que el segundo parámetro es igual a 3):
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
$keys = array_rand($arr, 3);
var_dump($keys);
?>
Resultado de ejecutar el código:
['a', 'b', 'e']