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新手上路(九)
Oct 09 PHP
删除无限分类并同时删除它下面的所有子分类的方法
Aug 08 PHP
PHP合并两个数组的两种方式的异同
Sep 14 PHP
ThinkPHP关联模型操作实例分析
Sep 23 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
Jul 25 PHP
php+mysql数据库查询实例
Jan 21 PHP
使用php的HTTP请求的库Requests实现美女图片墙
Feb 22 PHP
thinkPHP5.0框架URL访问方法详解
Mar 18 PHP
php mysql_list_dbs()函数用法示例
Mar 29 PHP
PHP简单留言本功能实现代码
Jun 09 PHP
php无限级分类实现评论及回复功能
Feb 18 PHP
Laravel5.5 动态切换多语言的操作方式
Oct 25 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
《心理测量者3》剧场版动画预告
2020/03/02 日漫
PHP生成唯一的促销/优惠/折扣码(附源码)
2012/12/28 PHP
深入PHP数据加密详解
2013/06/18 PHP
ThinkPHP整合百度Ueditor图文教程
2014/10/21 PHP
PHP实现冒泡排序的简单实例
2016/05/26 PHP
session 加入redis的实现代码
2016/07/15 PHP
详解php用curl调用接口方法,get和post两种方式
2017/01/13 PHP
PHP使用两个栈实现队列功能的方法
2018/01/15 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
jquery 事件对象属性小结
2010/04/27 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
JavaScript中使用Callback控制流程介绍
2015/03/16 Javascript
Javascript中的方法和匿名方法实例详解
2015/06/13 Javascript
利用JavaScript阻止表单提交的两种方法
2016/08/11 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
AngularJS读取JSON及XML文件的方法示例
2017/05/25 Javascript
js canvas实现适用于移动端的百分比仪表盘dashboard
2017/07/18 Javascript
Vue2.0父子组件传递函数的教程详解
2017/10/16 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
微信小程序实现的picker多级联动功能示例
2019/05/23 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
python编写简单爬虫资料汇总
2016/03/22 Python
windows10下python3.5 pip3安装图文教程
2018/04/02 Python
使用python编写udp协议的ping程序方法
2018/04/22 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
Python selenium的基本使用方法分析
2019/12/21 Python
浅谈python3打包与拆包在函数的应用详解
2020/05/02 Python
python import 上级目录的导入
2020/11/03 Python
Selenium 安装和简单使用的实现
2020/12/04 Python
旅游与酒店管理的自我评价分享
2013/11/03 职场文书
连带责任保证书
2014/04/29 职场文书
党员个人总结范文
2015/02/14 职场文书
python使用pygame创建精灵Sprite
2021/04/06 Python