czyli w 1/1024 przypadków wylosuje 10?
To i tak trochę nie "po statystycznemu", bo suma ułamków jest różna od 1, ale można zrobić coś pseudo - statystycznego.
Tworzę taką niby dystrybuantę w postaci tablicy (jedynek jest 1024, dwójek 512 itd) i losuję spośród całej tablicy. Kod wygląda tak:
<?php
for ($i=1; $i <= 10; $i++){
$ilosc = pow(2,11 - $i);
for ($j=1; $j <= $ilosc; $j++){
$dystrybuanta[] = $i;
}
}
print ("wylosowana liczba to {$dystrybuanta[$losowa]}"); ?>
Mam nadzieję że takie coś wystarczy

p.s.:
druga metoda (bez użycia tablicy):
<?php
$ilosc = 10;
while ($liczba < $losowa){
$liczba += pow(2,$ilosc);
$ilosc--;
}
$ilosc = 10 - $ilosc ;
echo 'Wylosowana liczba to:' . $ilosc; ?>