主頁(yè) > 知識(shí)庫(kù) > PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例

PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例

熱門標(biāo)簽:地圖標(biāo)注專員怎么樣 房產(chǎn)中介用的是什么外呼系統(tǒng) 寧波外呼營(yíng)銷系統(tǒng) 上海做外呼線路的通信公司 遼寧ai電銷機(jī)器人價(jià)格 電話機(jī)器人銷售主要負(fù)責(zé)什么 長(zhǎng)沙做地圖標(biāo)注公司 福建銀行智能外呼系統(tǒng)價(jià)格 四川保險(xiǎn)智能外呼系統(tǒng)供應(yīng)商

本文介紹了PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例,分享給大家,有興趣的可以看一下:

?php
// 新年紅包金額拆分試玩

class CBonus
{
  public $bonus;//紅包
  public $bonus_num;//紅包個(gè)數(shù)
  public $bonus_money;//紅包總金額
  public $money_single_max;//單個(gè)紅包限額
  
  public function __construct(){
    $this->bonus_num = 10;
    $this->bonus_money = 200;
    $this->money_single_max = 60;
  }

  private function randomFloat($min = 0, $max = 1) {
    $mt_rand = mt_rand();
    $mt_getrandmax = mt_getrandmax();
    echo 'mt_rand=' . $mt_rand . ', mt_getrandmax=' . $mt_getrandmax . 'hr/>';
    return $min + $mt_rand / $mt_getrandmax * ($max - $min);
  }
  //計(jì)算
  public function compute()
  {
    $this->bonus = array();
    $bonus_money_temp = $this->bonus_money;
    $money_single_max = $this->money_single_max;
    $i = 1;
    while($i  $this->bonus_num)
    {
      if ($money_single_max > $bonus_money_temp)
      {
        $money_single_max = floatval(sprintf("%01.2f", $bonus_money_temp / 2));//剩余金額不夠分時(shí),把剩余金額的一半作為備用金
      }
      $bonus_money_rad = $this->randomFloat(0.01, $money_single_max);//一個(gè)紅包隨機(jī)金額 最小的1分錢
      $bonus_money_rad = floatval(sprintf("%01.2f", $bonus_money_rad));
      $bonus_money_temp = $bonus_money_temp - $bonus_money_rad ;//待分配的總剩余金額
      $bonus_money_temp = floatval(sprintf("%01.2f", $bonus_money_temp));
      $this->bonus[] = $bonus_money_rad;
      //echo $bonus_money_rad . ',' . $bonus_money_temp . 'hr/>';
      $i++;
    }
    $this->bonus[] = $bonus_money_temp;//分配剩余金額給最后一個(gè)紅包
  }
  //打印
  public function output(){
    $total = 0;
    foreach($this->bonus as $k => $v)
    {
      echo '紅包' . ($k+1) . '=' . $v . 'br/>';
      $total += $v;
    }
    echo '紅包總金額:'.$total;
  }
}

$CBonus = new CBonus();
$CBonus->compute();
$CBonus->output();
?>

演示結(jié)果:

紅包1=12.36
紅包2=24.37
紅包3=42.71
紅包4=36.92
紅包5=25.84
紅包6=23.17
紅包7=15.92
紅包8=1.35
紅包9=7.75
紅包10=9.61
紅包總金額:200
 
紅包1=24.59
紅包2=17.66
紅包3=29.67
紅包4=32.34
紅包5=12.67
紅包6=37.15
紅包7=17.41
紅包8=15.23
紅包9=6.13
紅包10=7.15
紅包總金額:200

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PHP微信公眾號(hào)開發(fā)之微信紅包實(shí)現(xiàn)方法分析
  • PHP微信紅包生成代碼分享
  • 微信紅包隨機(jī)生成算法php版
  • 基于PHP微信紅包的算法探討
  • php仿微信紅包分配算法的實(shí)現(xiàn)方法
  • PHP 生成微信紅包代碼簡(jiǎn)單
  • php官方微信接口大全(微信支付、微信紅包、微信搖一搖、微信小店)
  • PHP微信紅包API接口
  • php實(shí)現(xiàn)的微信紅包算法分析(非官方)

標(biāo)簽:澳門 佛山 宿遷 深圳 工商登記 延安 宜春 常德

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例》,本文關(guān)鍵詞  PHP,實(shí)現(xiàn),微信,紅包,金額,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于PHP實(shí)現(xiàn)微信紅包金額拆分試玩的算法示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章