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中在数据库中保存Checkbox数据(2)
Oct 09 PHP
php discuz 主题表和回帖表的设计
Mar 13 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
May 03 PHP
解析php中var_dump,var_export,print_r三个函数的区别
Jun 21 PHP
在Win7 中为php扩展配置Xcache
Oct 08 PHP
php命令行用法入门实例教程
Oct 27 PHP
php实现专业获取网站SEO信息类实例
Apr 02 PHP
Yii框架弹出框功能示例
Jan 07 PHP
PHP面向对象学习之parent::关键字
Jan 18 PHP
PHP利用Cookie设置用户30分钟未操作自动退出功能
Jul 03 PHP
phpStudy vscode 搭建debug调试的教程详解
Jul 28 PHP
PHP连接SQL server数据库测试脚本运行实例
Aug 24 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+mysql分页代码详解
2008/03/27 PHP
PHP explode()函数用法、切分字符串
2012/10/03 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
Flash对联广告的关闭按钮讨论
2007/01/30 Javascript
用js判断用户浏览器是否是XP SP2的IE6
2007/03/08 Javascript
用jquery仿做发微博功能示例
2014/04/18 Javascript
node.js中的querystring.stringify方法使用说明
2014/12/10 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
2015/10/10 Javascript
javascript实现网站加入收藏功能
2015/12/16 Javascript
AngularJS中关于ng-class指令的几种实现方式详解
2016/09/17 Javascript
hovertree插件实现二级树形菜单(简单实用)
2016/12/28 Javascript
babel基本使用详解
2017/02/17 Javascript
javascript实现非常简单的小数取整功能示例
2017/06/13 Javascript
原生JS实现隐藏显示图片 JS实现点击切换图片效果
2021/01/27 Javascript
JavaScript中变量提升与函数提升经典实例分析
2018/07/26 Javascript
vue中如何实现后台管理系统的权限控制的方法示例
2018/09/19 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
JavaScript队列结构Queue实现过程解析
2020/03/07 Javascript
Python中使用wxPython开发的一个简易笔记本程序实例
2015/02/08 Python
Python聚类算法之DBSACN实例分析
2015/11/20 Python
Python 处理数据的实例详解
2017/08/10 Python
python调用OpenCV实现人脸识别功能
2018/05/25 Python
Python基于百度AI实现OCR文字识别
2020/04/02 Python
python实现按键精灵找色点击功能教程,使用pywin32和Pillow库
2020/06/04 Python
浅谈keras 的抽象后端(from keras import backend as K)
2020/06/16 Python
pytorch 多分类问题,计算百分比操作
2020/07/09 Python
德国知名健康零食网上商店:Seeberger
2017/07/27 全球购物
空气的环保标语
2014/06/12 职场文书
庆七一活动总结
2014/08/27 职场文书
离婚协议书该怎么写
2014/10/04 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
大学生敬老院活动总结
2015/05/07 职场文书
奖学金申请书(范文)
2019/08/14 职场文书
Python 中的Sympy详细使用
2021/08/07 Python
25张裸眼3D图片,带你重温童年的记忆,感受3D的魅力
2022/02/06 杂记
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python