当前位置:首页 > 日记 > 正文

php 从一个数组中随机的取出若干个不同的数实例

php 从一个数组中随机的取出若干个不同的数实例

第一种算法,CSDN上别人的想法 

 $num = 0;   $array = array(1, 2, 3, 4, 5, 6, 7, 8, 9);   $arr = array();   $g = 5;   $tag = true;   while ($tag) {     $count = count($array);     $t = rand(0, 1);     if ($t == 1) {       $arr[] = $array[$num];       unset($array[$num]);     }     $num ++;     if (count($arr) == $g) {       $tag = false;     }     if ($num == $count) {       $num = 0;  //循环     }   }  var_dump($arr); 

 第二种算法,自己想的。

可以在每次取出数据之后将该数据和最后没有获取的数据替换,然后再去没有取得的数据中随机获取值  

  function swap(&$a, &$b)   {     $temp = $b;     $b = $a;     $a = $temp;   }         $result = array();   $src = array();   for($i = 0 ; $i < 40 ; $i++)   {     $src[] = $i + 1;   }   $arr_len = count($src);   $count = 20;   $index = 0;   while($index < $count)   {     $random = rand(0, $arr_len - $index - 1);     $result[] = $src[$random];     swap($src[$random] , $src[$arr_len - $index - 1]);     $index += 1;   }         print_r(json_encode($result));   print_r(json_encode($src)); 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

基于Linux的FTP服务器权限管理

基于Linux的FTP服务器权限管理

权限管理,服务器,电脑软件,Linux,FTP,当我们搭建好一个FTP服务器后,接下去的工作就是要对这个服务器进行权限的管理与设置。因为这项工作直接关系到FTP服务器上文件的安全,关系到FTP服务器运行的稳定。所以,作为企业的网络管理员,不能够忽视这…

WIN2003下Web服务器配置 | 2

WIN2003下Web服务器配置 | 2

服务器配置,电脑软件,Web, 2.实现WAP应用。 WAP是Wireless Application Protocol,即无线应用协议。同时这也是一个开放的全球标准,可以使移动电话和其他无线终端的用户快速安全地获取互联网及企业内部网的信息及其他通信服务。配置…

word怎么删除分页符word删除分页符

word怎么删除分页符word删除分页符

分页,删除,方法,步骤,取消,  word文档编辑中,有时候需要插入分页符,但是发现插入之后,文档分页了,却没有出现分页符,或者是出现的分页符,但是不想要分页符了,想删掉,具体要怎么做呢?下面小编来告诉你word删除分页符的方法步骤吧。word删除分页符…

AngularJS执行流程详解

AngularJS执行流程详解

执行流程,详解,电脑软件,AngularJS,一.启动阶段浏览器解析HTML页面,读取到angular.js的<script>标签后会停止解析后面的DOM节点,开始执行angular.js,与此同时,Angular会设置一个事件监听器来监听DOMContentLoaded事件,当Angular监听到这个事件后…

Win7任务计划在哪

Win7任务计划在哪

任务计划,电脑软件,Win7任务计划是Win7系统的一个小功能,利用Win7任务计划,我们可以创建如:定时关机、定时开启某应用或者程序等等,实用性还是比较强的,不过很多网友只是听过Win7任务计划,但却不知道Win7任务计划在哪,下面本文将针对网友这个问题,…

ai怎么绘制一个可爱的梅花小鹿?

ai怎么绘制一个可爱的梅花小鹿?

绘制,小鹿,可爱,电脑软件,ai,大家知道怎么用ai素材制作之小鹿吗?下面我来教教大家。软件名称:Adobe Illustrator CS6 (AI cs6) 精简绿色中文版(32位+64位)软件大小:205MB更新时间:2014-05-111、打开电脑,接着我们新建一个名字为&ldquo;小鹿&rdqu…

怎么去掉word水印去掉word水印的两

怎么去掉word水印去掉word水印的两

方法,水印,两种,电脑软件,word,  我们在使用word办公软件时,会经常碰到一些word资料文档里面可能会有水印的存在。那么,我们该如何去除这些word水印呢?在下面就由小编给大家分享下的技巧,希望能帮助到您。去掉word水印方法一步骤一:打开要去…

取消Windows 2003关机提示的方法

取消Windows 2003关机提示的方法

提示,方法,取消,电脑软件,Windows,1、编辑组策略打开&ldquo;开始&rdquo;-&ldquo;运行&rdquo;,在&ldquo;打开&rdquo;一栏中输入&ldquo;gpedit.msc&rdquo;命令打开组策略编辑器,依次展开&ldquo;计算机配置&rdquo;&rarr;&ldquo;管理模板&rdquo;&…

在Excel中怎么使用加载宏进行规划

在Excel中怎么使用加载宏进行规划

加载,电脑软件,Excel,  Excel自带了规划求解加载项,使用该加载项可以根据用户设置的规划求解参数和约束条件来自动进行求解。以下是小编为您带来的关于在Excel中使用加载宏进行规划求解,希望对您有所帮助。在Excel中使用加载宏进行规划求解…

jquery对table做排序操作的实例演

jquery对table做排序操作的实例演

排序,操作,演示,实例,电脑软件,最近要对报表数组进行排序,在前端处理如下:首先在前台页面加载时对每行tr添加自定义的属性data-sort-field-ftime,属性值为要排序的字段的值(我的是数字比较方便):$.each(jsonarray, function(i, obj) { tropti…

bootstrap组件之导航组件使用方法

bootstrap组件之导航组件使用方法

组件,导航,使用方法,电脑软件,bootstrap,在上篇文章给大家介绍了bootstrap组件之按钮式下拉菜单小结,下面通过本文给大家介绍bootstrap导航组件的使用方法,一起看看吧!Bootstrap 中的导航组件都依赖同一个 .nav 类和ul,状态类也是共用的。改变…

详谈lastIndex对正则结果的影响

详谈lastIndex对正则结果的影响

正则,电脑软件,lastIndex,前言今天遇到一个问题,用正则表达式去检查同一个字符串时,交替返回true和false。无奈之下,重新翻了翻权威指南,发现罪魁祸首原来是lastIndex。可在控制台尝试下let reg = /[\d]/g//undefinedreg.test(1)//truereg.tes…