Ce face array_rand
array_rand returnează o cheie aleatorie, nu valoarea. Pentru valoare folosești $tablou[array_rand($tablou)].
Cu $num mai mare decât 1 returnează un tablou de chei, în ordinea din tabloul original. Nu este potrivit pentru securitate (parole, token-uri).
Parametri
| Parametru | Descriere |
|---|---|
$array |
Tabloul din care se alege. Nu poate fi gol. |
$num |
Opțional. Câte chei să aleagă, fără repetare. |
Ce returnează
O cheie sau un tablou de chei.
Exemple
Exemplul 1: Un sfat aleatoriu
Rezultatul diferă la fiecare rulare.
<?php
$sfaturi = ["Fă backup", "Actualizează pluginurile", "Folosește HTTPS"];
$cheie = array_rand($sfaturi);
echo "Cheia $cheie: " . $sfaturi[$cheie];
Rezultat posibil (diferă la fiecare rulare)
Cheia 2: Folosește HTTPS
Exemplul 2: Trei câștigători dintr-o listă
<?php
$participanti = ["Ana", "Mihai", "Ioana", "Radu", "Elena"];
$chei = array_rand($participanti, 3);
foreach ($chei as $c) {
echo $participanti[$c] . "\n";
}
Rezultat posibil (diferă la fiecare rulare)
Ana
Ioana
Elena
Greșeli frecvente
- Afișezi direct rezultatul și obții un număr în loc de valoare.
array_randreturnează cheia. - Dai un tablou gol sau
$nummai mare decât numărul de elemente. PrimeștiValueError.
Comenzi înrudite
shuffle: Amestecă elementele unui tablou într-o ordine aleatorie.random_int: Generează un număr întreg aleatoriu, sigur, între două valori.rand / mt_rand: Generează un număr întreg aleatoriu. Rapid, dar nesigur pentru parole sau token-uri.