php从数组中随机选择若干不重复元素的方法


Posted in PHP onMarch 14, 2015

本文实例讲述了php从数组中随机选择若干不重复元素的方法。分享给大家供大家参考。具体实现方法如下:

<?php

/*

 * $array = the array to be filtered

 * $total = the maximum number of items to return

 * $unique = whether or not to remove duplicates before getting a random list

 */

function unique_array($array, $total, $unique = true){

    $newArray = array();

    if((bool)$unique){

        $array = array_unique($array);

    }

    shuffle($array);

    $length = count($array);

    for($i = 0; $i < $total; $i++){

        if($i < $length){

            $newArray[] = $array[$i];

        }

    }

    return $newArray;

}

$phrases = array('Hello Sailor','Acid Test','Bear Garden','Botch A Job','Dark Horse',

    'In The Red','Man Up','Pan Out','Quid Pro Quo','Rub It In','Turncoat',

    'Yes Man','All Wet','Bag Lady','Bean Feast','Big Wig', 'Big Wig','Bear Garden'

    ,'All Wet','Quid Pro Quo','Rub It In');

print_r(unique_array($phrases, 1));

// Returns 1 result

print_r(unique_array($phrases, 5));

// Returns 5 unique results

print_r(unique_array($phrases, 5, false));

// Returns 5 results, but may have duplicates if

// there are duplicates in original array

print_r(unique_array($phrases, 100));

// Returns 100 unique results    

print_r(unique_array($phrases, 100, false));

// Returns 100 results, but may have duplicates if

// there are duplicates in original array

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP 实现多服务器共享 SESSION 数据
Aug 15 PHP
php $_SERVER当前完整url的写法
Nov 12 PHP
PHP函数常用用法小结
Feb 08 PHP
PHP 作用域解析运算符(::)
Jul 27 PHP
PHP中HTML标签过滤技巧
Jan 07 PHP
ThinkPHP的MVC开发机制实例解析
Aug 23 PHP
PHP基于imap获取邮件实例
Nov 11 PHP
ThinkPHP中使用ajax接收json数据的方法
Dec 18 PHP
smarty内置函数capture用法分析
Jan 22 PHP
php版阿里大于(阿里大鱼)短信发送实例详解
Nov 30 PHP
php之可变变量的实例详解
Sep 12 PHP
PHP使用Redis长连接的方法详解
Feb 12 PHP
php利用反射实现插件机制的方法
Mar 14 #PHP
php检测apache mod_rewrite模块是否安装的方法
Mar 14 #PHP
php读取csv文件并输出的方法
Mar 14 #PHP
php列出mysql表所有行和列的方法
Mar 13 #PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
Mar 13 #PHP
PHP 验证登陆类分享
Mar 13 #PHP
php检索或者复制远程文件的方法
Mar 13 #PHP
You might like
拼音码表的生成
2006/10/09 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
2011/07/14 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
深入讲解PHP的Yii框架中的属性(Property)
2016/03/18 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
js验证表单大全
2006/11/25 Javascript
JQuery获取各种宽度、高度(format函数)实例
2013/03/04 Javascript
js函数中onmousedown和onclick的区别和联系探讨
2013/05/19 Javascript
JS网页播放声音实现代码兼容各种浏览器
2013/09/22 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
jQuery 调用WebService 实例讲解
2016/06/28 Javascript
Vue数据驱动模拟实现5
2017/01/13 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
基于vue-resource jsonp跨域问题的解决方法
2018/02/03 Javascript
swiper.js插件实现pc端文本上下滑动功能示例
2018/12/03 Javascript
使用vue脚手架(vue-cli)搭建一个项目详解
2019/05/09 Javascript
js实现时钟定时器
2020/03/26 Javascript
js String.prototype.trim字符去前后空格的扩展
2020/08/23 Javascript
Python 字符串操作方法大全
2014/03/11 Python
Python深入学习之闭包
2014/08/31 Python
使用Python脚本操作MongoDB的教程
2015/04/16 Python
python3实现二叉树的遍历与递归算法解析(小结)
2019/07/03 Python
Django框架中间件定义与使用方法案例分析
2019/11/28 Python
Tech21美国/加拿大:英国NO.1防摔保护壳品牌
2018/01/20 全球购物
线程问题:wait()方法是定义在哪个类里面
2015/07/07 面试题
如何做好总经理助理
2013/11/12 职场文书
经理秘书找工作求职信
2013/12/19 职场文书
单位在职证明范本
2014/01/09 职场文书
教师评优事迹材料
2014/01/10 职场文书
化学教育专业自荐信
2014/07/04 职场文书
人事经理岗位职责范本
2014/08/04 职场文书
2014年小学教师工作自我评价
2014/09/22 职场文书
个人四风问题整改措施
2014/10/24 职场文书
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android