基本的な抽選アルゴリズム

当選確率の配列を定義する

private $innerRate = array(
'1' => 1,
'2' => 200,
'3' => 500,
'4' => 100000,
'5' => 300000,
'6' => 1693000,
);

関数を呼び出す

1.$i = $this->getRand($this->innerRate); 2.返された $i に応じて処理する。if と switch のどちらでもよい。

if($i==1)
{
	echo "一等奖";
}else{
	echo "二等奖";
}

基本関数

private function getRand($proArr)
{
    $result = '';
    // 概率数组的总概率精度
    $proSum = array_sum($proArr);
    // 概率数组循环
    foreach ($proArr as $key => $proCur) {
        $randNum = mt_rand(1, $proSum); // 抽取随机数
        if ($randNum <= $proCur) {
            $result = $key; // 得出结果
            break;
        } else {
            $proSum -= $proCur;
        }
    }
    unset($proArr);
    return $result;
}
最新情報を受け取る

Telegram や X で毎週のリサーチ、市場シグナル、上場情報をチェック。