本文目錄一覽:
- 1、php大轉盤的獲獎概率是怎麼算的
- 2、php 大轉盤抽獎每天的獎品不同 數據庫獎品表該怎麼設計?
- 3、求活動大轉盤源程序
- 4、THINKPHP 的大轉盤抽獎功能,現在我有個demo,給高分求幫我就是用戶轉完可以把獎項存到數據庫里.
- 5、如何用PHP製作有獎品(數量)的轉盤抽獎?
php大轉盤的獲獎概率是怎麼算的
php中獎概率算法,可用於刮刮卡,大轉盤等抽獎算法。用法很簡單,代碼里有詳細注釋說明,一看就懂
$proCur) {
$randNum = mt_rand(1, $proSum);
if ($randNum = $proCur) {
$result = $key;
break;
} else {
$proSum -= $proCur;
}
}
unset ($proArr);
return $result;
}
/*
* 獎項數組
* 是一個二維數組,記錄了所有本次抽獎的獎項信息,
* 其中id表示中獎等級,prize表示獎品,v表示中獎概率。
* 注意其中的v必須為整數,你可以將對應的 獎項的v設置成0,即意味着該獎項抽中的幾率是0,
* 數組中v的總和(基數),基數越大越能體現概率的準確性。
* 本例中v的總和為100,那麼平板電腦對應的 中獎概率就是1%,
* 如果v的總和是10000,那中獎概率就是萬分之一了。
*
*/
$prize_arr = array(
‘0’ = array(‘id’=1,’prize’=’平板電腦’,’v’=1),
‘1’ = array(‘id’=2,’prize’=’數碼相機’,’v’=5),
‘2’ = array(‘id’=3,’prize’=’音箱設備’,’v’=10),
‘3’ = array(‘id’=4,’prize’=’4G優盤’,’v’=12),
‘4’ = array(‘id’=5,’prize’=’10Q幣’,’v’=22),
‘5’ = array(‘id’=6,’prize’=’下次沒準就能中哦’,’v’=50),
);
/*
* 每次前端頁面的請求,PHP循環獎項設置數組,
* 通過概率計算函數get_rand獲取抽中的獎項id。
* 將中獎獎品保存在數組$res[‘yes’]中,
* 而剩下的未中獎的信息保存在$res[‘no’]中,
* 最後輸出json個數數據給前端頁面。
*/
foreach ($prize_arr as $key = $val) {
$arr[$val[‘id’]] = $val[‘v’];
}
$rid = get_rand($arr); //根據概率獲取獎項id
$res[‘yes’] = $prize_arr[$rid-1][‘prize’]; //中獎項
unset($prize_arr[$rid-1]); //將中獎項從數組中剔除,剩下未中獎項
shuffle($prize_arr); //打亂數組順序
for($i=0;$i
php 大轉盤抽獎每天的獎品不同 數據庫獎品表該怎麼設計?
獎品 id , 數量, 名稱,類型,圖片
然後隨機所有的獎品id。每天不就不一樣了
求活動大轉盤源程序
真有,我就做過,但是那個代碼,很貴的,一般不會給別人看的。
THINKPHP 的大轉盤抽獎功能,現在我有個demo,給高分求幫我就是用戶轉完可以把獎項存到數據庫里.
要用ajax,轉完了轉盤肯定 會告訴您是否中獎 中的什麼獎,肯定會有返回值,找到這個值用ajax 返回給php處理頁
如何用PHP製作有獎品(數量)的轉盤抽獎?
這個不是有key值么,抽到後把這個key值的給unset()
unset() 方法
注意如果你使用 unset() 方法,它是不會改變其他的鍵(key),如果你想對其他的鍵(key)重新整理排序,可以使用 array_values()。
?php
$array = array(0 = “a”, 1 = “b”, 2 = “c”);unset($array[1]);
//↑ 你要刪除的數組元素值的鍵print_r($array);?
輸出結果:
Array (
[0] = a [2] = c)
原創文章,作者:ANLR,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/149022.html