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 生成饼图 三维饼图
Sep 28 PHP
PHPMailer 中文使用说明小结
Jan 22 PHP
php 读取文件乱码问题
Feb 20 PHP
php设计模式 Visitor 访问者模式
Jun 28 PHP
php中json_decode()和json_encode()的使用方法
Jun 04 PHP
PHP管理内存函数 memory_get_usage()使用介绍
Sep 23 PHP
php上传图片存入数据库示例分享
Mar 11 PHP
php遍历树的常用方法汇总
Jun 18 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 PHP
Yii2主题(Theme)用法详解
Jul 23 PHP
php判断str字符串是否是xml格式数据的方法示例
Jul 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
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
PHP防止post重复提交数据的简单例子
2014/06/07 PHP
destoon找回管理员密码的方法
2014/06/21 PHP
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
jQuery中需要注意的细节问题小结
2011/12/06 Javascript
$.get获取一个文件的内容示例代码
2013/09/11 Javascript
让input框实现类似百度的搜索提示(基于jquery事件监听)
2014/01/31 Javascript
jQuery中replaceAll()方法用法实例
2015/01/16 Javascript
JS实现从网页顶部掉下弹出层效果的方法
2015/08/06 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
jquery常用的12个小功能
2016/07/22 Javascript
bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
2016/12/01 Javascript
JS基于面向对象实现的选项卡效果示例
2016/12/20 Javascript
js实现带简单弹性运动的导航条
2017/02/22 Javascript
AngularJS路由切换实现方法分析
2017/03/17 Javascript
d3.js实现自定义多y轴折线图的示例代码
2018/05/30 Javascript
node之本地服务器图片上传的方法示例
2019/03/26 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
vue tab切换,解决echartst图表宽度只有100px的问题
2020/07/19 Javascript
Tornado服务器中绑定域名、虚拟主机的方法
2014/08/22 Python
Python验证码识别处理实例
2015/12/28 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
2016/04/11 Python
Pycharm远程调试openstack的方法
2017/11/21 Python
python构建深度神经网络(续)
2018/03/10 Python
PyCharm 创建指定版本的 Django(超详图解教程)
2019/06/18 Python
flask框架蓝图和子域名配置详解
2020/01/25 Python
pycharm远程连接vagrant虚拟机中mariadb数据库
2020/06/05 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
一套比较完整的软件测试人员面试题
2012/05/13 面试题
师范生个人推荐信
2013/11/29 职场文书
先进事迹材料怎么写
2014/12/30 职场文书
2016大学生求职自荐信范文
2016/01/28 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
关于python pygame游戏进行声音添加的技巧
2021/10/24 Python
css3 文字断裂效果
2022/04/22 HTML / CSS
Python Flask实现进度条
2022/05/11 Python