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 相关文章推荐
CI框架开发新浪微博登录接口源码完整版
May 28 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
php向js函数传参的几种方法
Aug 10 PHP
分享下php5类中三种数据类型的区别
Jan 26 PHP
PHP中常见的缓存技术实例分析
Sep 23 PHP
CodeIgniter控制器之业务逻辑实例分析
Jan 20 PHP
PHP封装的MSSql操作类完整实例
May 26 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
php mysql_list_dbs()函数用法示例
Mar 29 PHP
yii2使用gridView实现下拉列表筛选数据
Apr 10 PHP
PHP实现的AES 128位加密算法示例
Sep 16 PHP
TP5框架使用QueryList采集框架爬小说操作示例
Mar 26 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
浅析application/x-www-form-urlencoded和multipart/form-data的区别
2014/06/22 PHP
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
php结合js实现点击超链接执行删除确认操作
2014/10/31 PHP
php中实现记住密码下次自动登录的例子
2014/11/06 PHP
php支持断点续传、分块下载的类
2016/05/02 PHP
自制PHP框架之模型与数据库
2017/05/07 PHP
javascript  Error 对象 错误处理
2008/05/18 Javascript
javascript Object与Function使用
2010/01/11 Javascript
用jQuery与JSONP轻松解决跨域访问的问题
2014/02/04 Javascript
判断浏览器的内核及版本号方法汇总
2015/01/05 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
2016/01/08 Javascript
jquery及js实现动态加载js文件的方法
2016/01/21 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
Bootstrap fileinput组件封装及使用详解
2017/03/10 Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
2017/06/05 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
2018/01/12 Javascript
vue中实现移动端的scroll滚动方法
2018/03/03 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
2018/05/04 Javascript
JS匿名函数内部this指向问题详析
2019/05/10 Javascript
js打开word文档预览操作示例【不是下载】
2019/05/23 Javascript
js实现随机点名程序
2020/09/17 Javascript
[01:34]传奇从这开始 2016国际邀请赛中国区预选赛震撼开启
2016/06/26 DOTA
浅析Python 读取图像文件的性能对比
2019/03/07 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
Python中的 ansible 动态Inventory 脚本
2020/01/19 Python
详解python中的lambda与sorted函数
2020/09/04 Python
python爬虫利用代理池更换IP的方法步骤
2021/02/21 Python
欧洲领先的火车票和大巴票预订平台:Trainline
2018/12/26 全球购物
大学毕业感言100字
2014/02/03 职场文书
黄金搭档广告词
2014/03/21 职场文书
北京导游词
2015/02/12 职场文书
2015年暑期社会实践活动总结
2015/03/27 职场文书
运动会通讯稿200字
2015/07/20 职场文书
2015年四年级班主任工作总结
2015/10/22 职场文书
golang json数组拼接的实例
2021/04/28 Golang
Python字典和列表性能之间的比较
2021/06/07 Python