блин, жаль тут нету смайлика бьющегося головой об стену.
e1f,
это у тебя такая сильно хитро выделанная замена shuffle?
зачем изобретаешь велосипед?
почему бы вообще тогда не воспользоваться array_rand?
$max=100;
$count=10;
$rand=array();
for($i=1;$i<=$max;$i++)
$rand[$i]=$i;
$rand=array_rand ($rand,$count);
но работает, оно медленнее(при больших $max и малых $count) чем мое решение