Funcția array_rand

Funcția array_rand returnează o cheie aleatorie dintr-un array. Primul parametru specifică array-ul, iar al doilea parametru opțional indică câte chei aleatorii să fie returnate. Dacă nu este specificat - este returnată o singură cheie, iar dacă este specificat - numărul specificat de chei sub formă de array.

Sintaxă

phparray_rand(array $array, int $num = 1): int|string|array

Exemplu

În acest exemplu funcția va returna o cheie aleatorie din array:

php<?php
  $arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
  echo array_rand($arr);
?>

Rezultatul executării codului:

php'c'

Exemplu

Să returnăm un element aleatoriu din array, cunoscând cheia aleatorie:

php<?php
  $arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
  
  $key = array_rand($arr);
  echo $arr[$key];
?>

Rezultatul executării codului:

php3

Exemplu

Să setăm al doilea parametru la valoarea 3 - în acest caz funcția va returna un array cu 3 chei aleatorii (3 chei - deoarece al doilea parametru este egal cu 3):

php<?php
  $arr = ['a'=>1, 'b'=>2, 'c'=>3, 'd'=>4, 'e'=>5];
  
  $keys = array_rand($arr, 3);
  var_dump($keys);
?>

Rezultatul executării codului:

php['a', 'b', 'e']

Vedeți și

  • funcția shuffle,
    care amestecă un array
  • funcția mt_rand,
    care returnează un număr aleatoriu