Mi spiegate perchè mi succede questo:

$numeri = range(1,10);

e mi crea l'array di valori da 1 a 10 come mi aspetto.

Adesso voglio estrarre tre valori e faccio

$estratti = array_rand($numeri,3);
e ottengo per esempio

[0] => 0
[1] => 2
[2] => 5

Visto che i numeri che mi da son sempre tra 0 e 9 ho pensato che usando array_values mi restituisse i valori associati alle chiavi
print_r(array_values($estratti));

e invece ottengo lo stesso 0,2,5.
Stesso risultato così.
echo $estratti[0];
echo $estratti[1];
echo $estratti[2];

Insomma sembra che lo 0 sia proprio un valore e non la chiave. Ovviamente il numero 10 non compare mai. come si spiega? dove sbaglio?