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常用字符串的总结(待续)
Jun 07 PHP
php生成缩略图示例代码分享(使用gd库实现)
Jan 20 PHP
ThinkPHP模板比较标签用法详解
Jun 30 PHP
php实现批量压缩图片文件大小的脚本
Jul 04 PHP
PHP+jquery实时显示网站在线人数的方法
Jan 04 PHP
php实现过滤UBB代码的类
Mar 12 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
PHP实现连接设备、通讯和发送命令的方法
Oct 13 PHP
Zend Framework动作助手Url用法详解
Mar 05 PHP
PHP6连接SQLServer2005的三部曲
Apr 15 PHP
基于php判断客户端类型
Oct 14 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
Nov 03 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
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
php变量与数组相互转换的方法(extract与compact)
2016/12/02 PHP
php实现网页端验证码功能
2017/07/11 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
2019/05/06 PHP
Javascript 类型转换方法
2010/10/24 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
网页右键ie不支持event.preventDefault和event.returnValue (需要加window)
2013/02/22 Javascript
jquery获取iframe中的dom对象(两种方法)
2013/07/02 Javascript
jquery序列化表单去除指定元素示例代码
2014/04/10 Javascript
理解javascript中的回调函数(callback)
2014/09/02 Javascript
AngularJS基础学习笔记之简单介绍
2015/05/10 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
详解webpack + react + react-router 如何实现懒加载
2017/11/20 Javascript
html5以及jQuery实现本地图片上传前的预览代码实例讲解
2021/03/01 jQuery
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
python将人民币转换大写的脚本代码
2013/02/10 Python
Python入门篇之字符串
2014/10/17 Python
在Python中使用M2Crypto模块实现AES加密的教程
2015/04/08 Python
Django模板变量如何传递给外部js调用的方法小结
2017/07/24 Python
python使用folium库绘制地图点击框
2018/09/21 Python
在Python中pandas.DataFrame重置索引名称的实例
2018/11/06 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
python numpy库linspace相同间隔采样的实现
2020/02/25 Python
服务器端jupyter notebook映射到本地浏览器的操作
2020/04/14 Python
Python格式化输出--%s,%d,%f的代码解析
2020/04/29 Python
浅谈pycharm导入pandas包遇到的问题及解决
2020/06/01 Python
基于python实现坦克大战游戏
2020/10/27 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
英国最出名高街品牌:Forever Unique
2018/02/24 全球购物
size?法国官网:英国伦敦的球鞋精品店
2020/03/15 全球购物
竞争与合作演讲稿
2014/05/12 职场文书
技术员岗位职责
2015/02/04 职场文书
学校后勤工作总结2015
2015/05/15 职场文书
乔迁新居祝福语
2019/11/04 职场文书
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python
virtualenv隔离Python环境的问题解析
2022/06/21 Python