码迷,mamicode.com
首页 > 其他好文 > 详细

简易 红包生成

时间:2016-02-02 17:37:32      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

<?php 
error_reporting(E_ALL || ~E_NOTICE);
Header("content-type:text/html;charset=utf8");
// // $list 是反回的数组    
// $list = array(5,5,5,10,10,10); //红包数组

// echo "当前红包还剩:"; var_dump($list);
// echo "<hr>";
// $arr =array_rand($list);  //从红包中随机取出一个
// // var_dump($arr);

//  echo "抽到红包为".$list[$arr];  //输出取出的值
//  unset($list[$arr]);  // 从红包数组中删除这个红包
// echo "<hr>";
// echo  "当前红包还剩:";   var_dump($list);


// echo "<hr>";

function hongbao($total,$n){
    if($total/$n<1){
        for($x=1;$x<=$n;$x++){
            $min = intval($total*100/$n/$n); //红包取值的最小值 ,和平均值相关,跨度为一个相度固定值 ;
            if($x ==1){
                $a= rand($min,intval($total*100/$n)); 
                $res = $total*100-$a;
                $s = $a/100;
                echo "第{$x}份红包为1:{$s}<br>";
            }elseif($x ==$n){
                $res = $res/100;
                echo "第{$x}份红包为1:{$res}<br>";
            }else{
                $a = rand($min,intval($res/($n-$x)));
                $res = $res-$a;
                $s = $a/100;
                echo "第{$x}份红包为1:{$s}<br>";
            }
        }
    }else{

        for($x=1;$x<=$n;$x++){
            $min = intval($total/$n/$n); //红包取值的最小值 ,和平均值相关,跨度为一个相度固定值 ;    
            if($x ==1){
                $a= rand($min,intval($total/$n)); 
                $res = $total-$a;
                echo "第{$x}份红包为:{$a}<br>";
            }elseif($x ==$n){
                echo "第{$x}份红包为:{$res}<br>";
            }else{
                $a = rand($min,intval($res/($n-$x)));
                $res = $res-$a;
                echo "第{$x}份红包为:{$a}<br>";
            }    
        }
    }
}

hongbao(5,10);  //平均分值 不能小于0.01 

?>

 

简易 红包生成

标签:

原文地址:http://www.cnblogs.com/zx1989031/p/5177917.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!