array_rand() é bastante útil quando se quer conseguir aleatoriamente um ou mais elementos de um array. Ela recebe o array input e outro argumento opcional num_req o qual especifica quantos elementos se quer conseguir - se não for especificado, o padrão é 1.
Se estiver pegando apenas um elemento, array_rand() retorna a chave para este elemento aleatório. De outra forma, ele retorna um array com as chaves desses elementos aleatórios. Assim é possível conseguir chaves e valores aleatórios a partir da mesma função.
Nota: A partir do PHP 4.2.0, não é mais necessário semear o gerador de números aleatórios com srand() ou mt_srand() pois isso é feito automaticamente.
Veja também shuffle().