Bhe.. con la normale funzione rand() del php non credo tu possa farlo, per quando riguarda le probabilità, ma puoi mettere tutti i numeri in un'array, l'array potrà essere ad esempio formata in questo modo:
Codice PHP:
$array = array(1,1,1,1,1,1,1,1,1,1,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3);
Al questo punto recuperi un valore casuale dall'array mediante la funzione array_rand() del php.
Non ne sono sicuro ma credo che con questo metodo, visto che in array ci sono dieci 1, due 2, e quattordici 3 il valore 1 dovrebbe avere il 10% di probabilità che esce, il 2 il 2%, mentre il 3 il 14%.
Bhe.. seguendo la logica dovrebbe essere cosi, ma non saprei.