<?php
$result = [
5 => 0,
7 => 0,
10 => 0,
15 => 0,
];
/*
5% - вероятность 50%
7% - вероятность 30%
10% - вероятность 15%
15 % - вероятность 5%
*/
for ($i = 0; $i < 100; $i++) {
$result[randomCoupon()]++;
}
print_r($result);
function randomCoupon()
{
//$numbers = range(1, 100);
//shuffle($numbers);
//$win = array_shift($numbers);
$win = rand(1, 100);
if ($win <= 50) {
return 5;
} elseif ($win <= 80) {
return 7;
} elseif ($win <= 95) {
return 10;
} else {
return 15;
}
}