亚洲人成色在线观看,亚洲人成网亚洲欧洲无码久久,亚洲av日韩av天堂久久,亚洲爆乳精品无码一区二区,亚洲av永久无码精品网站色欲

  • 微信
    咨詢
    微信在線咨詢 服務時間:9:00-18:00
    縱橫數據官方微信 使用微信掃一掃
    馬上在線溝通
  • 業(yè)務
    咨詢

    QQ在線咨詢 服務時間:9:00-18:00

    選擇下列產品馬上在線溝通

    縱橫售前-老古
    QQ:519082853 售前電話:18950029581
    縱橫售前-江夏
    QQ:576791973 售前電話:19906048602
    縱橫售前-小李
    QQ:3494196421 售前電話:19906048601
    縱橫售前-小智
    QQ:2732502176 售前電話:17750597339
    縱橫售前-燕子
    QQ:609863413 售前電話:17750597993
    縱橫值班售后
    QQ:407474592 售后電話:400-1886560
    縱橫財務
    QQ:568149701 售后電話:18965139141

    售前咨詢熱線:

    400-188-6560

    業(yè)務姚經理:18950029581

  • 關注

    關于縱橫數據 更多優(yōu)惠活動等您來拿!
    縱橫數據官方微信 掃一掃關注官方微信
  • 關閉
  • 頂部
  • 您所在的位置 : 首頁 > 新聞公告 > php實現(xiàn)紅包功能代碼

    php實現(xiàn)紅包功能代碼

    本文主要和大家分享php實現(xiàn)的紅包功能,主要以代碼的形式和大家分享,由于是第一寫紅包對紅包不是太了解,希望能幫助到大家。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    for ($i=1; $i < $p; ++$i) {
        $s2 = ($sum - ($p - $i) * 0.01)/($p - $i); 
        //echo $s2;die;
        $money = rand(1,$s2*100);
        $money = number_format($money/100,2,'.',',');
        $sum = $sum - $money;
        $wamp[$i] = $money;
         
    }
       //format_number(要轉換的浮點數,要分隔的符號)
       echo "<hr/>";
       echo "<pre>";
        print_r($wamp);
        echo "<pre>";
     
     
    }
    //echo 2;

    可以基本實現(xiàn)紅包功能 主要說說思想

    場景 有個同學群 里面有 50個同學 為了慶祝聚會 要發(fā)紅包

    首先要求每個人必須領到紅包 并且每個人領到紅包概率基本相同

    那么 每個人領到紅包概率 = (紅包現(xiàn)有的金額 - (當前沒領到紅包人數) * 每人最少領到紅包的金額 )/ 當前沒領到紅包人數

    $safe_total 每個人領到紅包概率 $total 紅包現(xiàn)有的金額 $min 人最少領到紅包的金額

    那么 公式 就能 $safe_total = ($total - ($num - $i) * $min) / ($num - $i);

    代碼不唯一 重要的就是 思想

    下面是參考代碼

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    function getRedGift($total, $num = 10)
    {
    $min = 0.01;
    $wamp = array();
    $returnData = array();
    for ($i = 1; $i < $num; ++$i) {
    $safe_total = ($total - ($num - $i) * $min) / ($num - $i); //紅包金額的最大值    為了是大部分個人獲得的紅包金額一定
    if ($safe_total < 0) break;
    $money = @mt_rand($min * 100, $safe_total * 100) / 100;//隨機產生一個紅包金額
    $total = $total - $money;//剩余紅包總額
    $wamp[$i] = round($money, 2);//保留兩位有效數字
    }
    $wamp[$i] = round($total, 2);
    $returnData['MoneySum'] = $wamp;
    $returnData['newTotal'] = array_sum($wamp);
    return $returnData;
    }
    //測試
    $data = getRedGift(100, 10);
    echo "<pre>";
     
     
    print_r($data);
     
     
    echo "<pre>";

    最新推薦


    微信公眾帳號
    關注我們的微信