php 从指定数字中获取随机组合的简单方法(推荐)


Posted in PHP onApril 05, 2017

例如:给定数字100,需要随机获取3个组成这个数字的组合,例如70,20,10

代码如下:

<?php
/**
 * 获取指定数字的随机数字组合
 * @param Int  $var 数字
 * @param Int  $num 组合这个数字的数量
 * @return Array
 */
function getNumGroups($var, $num){

  // 数量不正确
  if($var<$num){
    return array();
  }

  $total = 0;
  $result = array();

  for($i=1; $i<$num; $i++){
    $tmp = mt_rand(1, $var-($num-$i)-$total);
    $total += $tmp;
    $result[] = $tmp;
  }

  $result[] = $var-$total;

  return $result;

}

// demo
$result = getNumGroups(100, 3);
print_r($result);

?>

输出:

Array
(
  [0] => 42
  [1] => 25
  [2] => 33
)

以上这篇php 从指定数字中获取随机组合的简单方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
一个PHP的String类代码
Apr 20 PHP
php file_get_contents函数轻松采集html数据
Apr 22 PHP
PHP内置过滤器FILTER使用实例
Jun 25 PHP
php实现的Timer页面运行时间监测类
Sep 24 PHP
php中使用key,value,current,next和prev函数遍历数组的方法
Mar 17 PHP
PHP递归实现文件夹的复制、删除、查看大小操作示例
Aug 11 PHP
Laravel学习教程之View模块详解
Sep 18 PHP
Laravel中为什么不使用blpop取队列详析
Aug 01 PHP
thinkPHP5.0框架事务处理操作简单示例
Sep 07 PHP
如何优雅的使用 laravel 的 validator验证方法
Nov 11 PHP
php集成开发环境详解
Sep 24 PHP
Laravel 关联模型-关联新增和关联更新的方法
Oct 10 PHP
php 判断页面或图片是否经过gzip压缩的方法
Apr 05 #PHP
通过php动态传数据到highcharts
Apr 05 #PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
Apr 04 #PHP
EarthLiveSharp中cloudinary的CDN图片缓存自动清理python脚本
Apr 04 #PHP
php实现用户登陆简单实例
Apr 04 #PHP
详谈phpAdmin修改密码后拒绝访问的问题
Apr 03 #PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
Apr 03 #PHP
You might like
PHP图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
关于php支持分块与断点续传文件下载功能代码
2014/05/09 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
2018/01/15 PHP
Javascript Tab 导航插件 (23个)
2009/06/11 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
jQuery判断元素是否是隐藏的代码
2011/04/24 Javascript
jQuery之排序组件的深入解析
2013/06/19 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
javascript 回到顶部效果的实现代码
2014/02/17 Javascript
微信小程序中的onLoad详解及简单实例
2017/04/05 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
微信小程序实现的动态设置导航栏标题功能示例
2019/01/31 Javascript
微信小程序实现左右列表联动
2020/05/19 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
基于javascript处理二进制图片流过程详解
2020/06/08 Javascript
[01:11:35]Liquid vs LGD 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python 多线程应用介绍
2012/12/19 Python
python实现杨辉三角思路
2017/07/14 Python
Python3.5模块的定义、导入、优化操作图文详解
2019/04/27 Python
让你Python到很爽的加速递归函数的装饰器
2019/05/26 Python
Python使用pymysql模块操作mysql增删改查实例分析
2019/12/19 Python
Python基于execjs运行js过程解析
2020/11/27 Python
python数据抓取3种方法总结
2021/02/07 Python
Whistles官网:英国女装品牌
2020/08/14 全球购物
介绍Ibatis的核心类
2013/11/18 面试题
介绍一下HTTP、HTTPS和SSL
2012/12/16 面试题
行政文员岗位职责
2013/11/08 职场文书
大专应届生个人的自我评价
2013/11/21 职场文书
咨询公司各岗位职责
2013/12/02 职场文书
元宵节晚会主持人串词
2014/03/25 职场文书
《春晓》教学反思
2014/04/20 职场文书
银行竞聘演讲稿范文
2014/04/23 职场文书
社会学专业求职信
2014/07/17 职场文书
导游词格式
2015/02/13 职场文书
水知道答案观后感
2015/06/08 职场文书