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(2)――PHP类型
Feb 15 PHP
PHP中输出转义JavaScript代码的实现代码
Apr 22 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
Laravel 5框架学习之Eloquent 关系
Apr 09 PHP
PHP实现的简单缓存类
Jul 29 PHP
PHP 中魔术常量的实例详解
Oct 26 PHP
php闭包中使用use声明变量的作用域实例分析
Aug 09 PHP
微信支付之JSAPI公众号支付详解
May 15 PHP
Laravel基础_关于view共享数据的示例讲解
Oct 14 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 PHP
PHP实现图片防盗链破解操作示例【解决图片防盗链问题/反向代理】
May 29 PHP
php判断IP地址是否在多个IP段内
Aug 18 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实现的在线人员函数库
2008/04/09 PHP
8个PHP程序员常用的功能汇总
2014/12/18 PHP
php 中的closure用法详解
2017/06/12 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
PHP文件后缀不强制为.php方法
2019/03/31 PHP
TNC vs RR BO3 第一场 2.14
2021/03/10 DOTA
document对象execCommand的command参数介绍
2006/08/01 Javascript
JS 字符串连接[性能比较]
2009/05/10 Javascript
js下用层来实现select的title提示属性
2010/02/23 Javascript
JavaScript中获取元素索引的函数
2010/09/10 Javascript
再论Javascript下字符串连接的性能
2011/03/05 Javascript
js实现的类似于asp数据字典的数据类型代码实例
2014/09/03 Javascript
怎么通过onclick事件获取js函数返回值(代码少)
2015/07/28 Javascript
一波JavaScript日期判断脚本分享
2016/03/06 Javascript
数据结构中的各种排序方法小结(JS实现)
2016/07/23 Javascript
在vue项目中安装使用Mint-UI的方法
2017/12/27 Javascript
详解es6新增数组方法简便了哪些操作
2019/05/09 Javascript
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
python连接mysql实例分享
2016/10/09 Python
Python 基础教程之str和repr的详解
2017/08/20 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
Python实现简单生成验证码功能【基于random模块】
2018/02/10 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
测量实习生自我鉴定
2013/09/19 职场文书
党员的自我评价范文
2014/01/02 职场文书
挂科检讨书范文
2014/02/20 职场文书
外语系毕业生求职自荐信
2014/04/12 职场文书
2014年度党员自我评议
2014/09/13 职场文书
工作经常出错的检讨书
2014/09/13 职场文书
2014年转正工作总结
2014/11/08 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
物业客服专员岗位职责
2015/04/07 职场文书
承诺书范本大全
2015/05/04 职场文书
Pandas数据类型之category的用法
2021/06/28 Python
html form表单基础入门案例讲解
2021/07/21 HTML / CSS