PHP array_rand() Function

Quick summary: The PHP array_rand() function picks one or more random keys from an array.

PHP array_rand() Syntax

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

PHP array_rand() Basic examples

$array = ['a','b','c'];
$key = array_rand($array);
echo $key;
PHP
Output:
Random key (0-2)

Returns a single random key.

$keys = array_rand($array, 2);
print_r($keys);
PHP
Output:
Array of two random keys

Returns multiple random keys as an array.

PHP array_rand() Real-world usage

$quotes = ['Hi','Hello','Welcome'];
$random = $quotes[array_rand($quotes)];
echo $random;
PHP
Output:
Random quote

Select random item from array.

PHP array_rand() Edge cases

array_rand([], 1);
PHP
Output:
Warning

Cannot pick from an empty array.

PHP array_rand() Common mistakes

Expecting random value instead of key

array_rand() returns key, not value.

Incorrect
$value = array_rand($array);
Correct
$value = $array[array_rand($array)];

Use returned key to access the value.

PHP array_rand() Frequently Asked Questions

What does array_rand() do?

Returns random key(s) from an array.

Use case?

Random selection.

Return value?

Key or array of keys.

Common mistake?

Expecting values instead of keys.

Handles multiple keys?

Yes.

Performance?

Fast.

Safe?

Yes.

Handles empty array?

Warning.

Alternative?

shuffle().

Secure random?

No.

Used in games?

Yes.

Best practice?

Validate array size.

PHP array_rand() Related PHP Functions