熱門文章

      最新文章

      PHP模擬微信拆紅包算法思路及實現(xiàn)代碼

      發(fā)布時間:2021-06-22 15:26:45

      PHP拆紅包算法
      邏輯比較簡單,傳入金額.和拆分的數(shù)量
      首先循環(huán)要拆分的數(shù)量,判斷如果是最后一個就把剩下的錢全部塞進去;
      如果不是,就取剩余的金額(第一次循環(huán)剩余的金額=總金額)除以剩下的次數(shù),取得平均值,然后再隨機取最小的0.01 和平均值*2,把剩余的金額更新一下就行了。

      算法模擬微信拆紅包算法,但是這是提前計算拆分的數(shù)據(jù)保存的,微信是每次動態(tài)計算的。


      代碼如下:

      /**
           * 拆分紅包
           * @param SendRedPackageRequest $request
           * @return array
           */
          protected function spitMoney(SendRedPackageRequest $request)
          {
              $result = [];
              $reamingMoney = $request->money;
              for ($i = $request->count; $i >= 1; $i--) {
                  if ($i === 1) {
                      $result[] = round($reamingMoney, 2);
                      $reamingMoney = 0;
                  } else {
                      $average = round(bcdiv($reamingMoney, $i), 2);    //平均值
                      $amount = round(mt_rand(1, $average * 199) / 100, 2);
                      $reamingMoney = doubleval(bcsub($reamingMoney, $amount));
                      $result[] = round($amount, 2);
                  }
              }
              return $result;
          }


      返回頂部
      主站蜘蛛池模板: 国产精品高清一区二区人妖 | 日韩毛片一区视频免费| 色综合一区二区三区| 亚洲国产精品成人一区| 亚洲一区二区三区播放在线| 无码日韩人妻av一区免费| 久久久精品人妻一区亚美研究所| 天堂不卡一区二区视频在线观看| 岛国精品一区免费视频在线观看| 久久久无码精品人妻一区| 亚洲视频一区二区三区四区| 久久se精品一区精品二区| 中文字幕一区二区三区视频在线| 天天爽夜夜爽人人爽一区二区| 亚洲国产成人久久一区二区三区| 亚洲av无码一区二区乱子伦as| 精品国产一区二区三区久久蜜臀| 成人免费视频一区| 国产成人综合亚洲一区| 亚洲av无码一区二区三区天堂| ...91久久精品一区二区三区| 久久精品国产亚洲一区二区| 国产成人无码精品一区二区三区| 国产精品一区二区久久不卡 | 久久精品一区二区东京热| 台湾无码AV一区二区三区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 日韩高清一区二区| 亚洲第一区在线观看| 无码国产精成人午夜视频一区二区 | 一区二区视频在线| 中文字幕日韩一区二区三区不卡| 97久久精品无码一区二区天美 | 天堂Aⅴ无码一区二区三区| 人妻少妇精品视频一区二区三区 | 国产三级一区二区三区 | 国产亚洲欧洲Aⅴ综合一区| 无码人妻久久一区二区三区| 精品国产AⅤ一区二区三区4区| 久久99国产精一区二区三区| 无码一区二区三区免费|