以下是一个简单的概率控制抽奖系统的 PHP 代码:

<?php
// 奖品列表
$prizes = array(
    array('name' => '一等奖', 'probability' => 0.1), // 10% 概率中奖
    array('name' => '二等奖', 'probability' => 0.2), // 20% 概率中奖
    array('name' => '三等奖', 'probability' => 0.3), // 30% 概率中奖
    array('name' => '安慰奖', 'probability' => 0.4), // 40% 概率中奖
);

// 计算总概率
$totalProbability = 0;
foreach ($prizes as $prize) {
    $totalProbability += $prize['probability'];
}

// 生成随机数
$rand = mt_rand() / mt_getrandmax() * $totalProbability;

// 计算中奖奖品
$prizeIndex = 0;
$prizeProbability = $prizes[$prizeIndex]['probability'];
while ($rand > $prizeProbability) {
    $prizeIndex++;
    $prizeProbability += $prizes[$prizeIndex]['probability'];
}

// 输出中奖信息
echo '恭喜您中了:' . $prizes[$prizeIndex]['name'];
?>

该代码首先定义了一个奖品列表,每个奖品都有一个名称和一个概率,总概率等于所有奖品概率之和。然后生成一个 0 到总概率之间的随机数,并循环判断该随机数是否在某个奖品的概率范围内,直到找到中奖的奖品为止。最后输出中奖信息。

PHP 概率控制抽奖系统代码实现

原文地址: https://www.cveoy.top/t/topic/mUSq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录