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 相关文章推荐
基于pear auth实现登录验证
Feb 26 PHP
PHP ? EasyUI DataGrid 资料存的方式介绍
Nov 07 PHP
PHP在不同页面间传递Json数据示例代码
Jun 08 PHP
PHP empty函数报错解决办法
Mar 06 PHP
PHP采用get获取url汉字出现乱码的解决方法
Nov 13 PHP
Codeigniter发送邮件的方法
Mar 19 PHP
Laravel使用支付宝进行支付的示例代码
Aug 16 PHP
php实现简单的权限管理的示例代码
Aug 25 PHP
php安装扩展mysqli的实现步骤及报错解决办法
Sep 23 PHP
PHP性能测试工具xhprof安装与使用方法详解
Apr 29 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
May 25 PHP
Laravel开启跨域请求的方法
Oct 13 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
基于qmail的完整WEBMAIL解决方案安装详解
2006/10/09 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
jquery text,radio,checkbox,select操作实现代码
2009/07/09 Javascript
ASP 过滤数组重复数据函数(加强版)
2010/05/31 Javascript
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
jQuery中slideUp()方法用法分析
2014/12/24 Javascript
2则自己编写的jQuery特效分享
2015/02/26 Javascript
JS返回iframe中frameBorder属性值的方法
2015/04/01 Javascript
javascript如何操作HTML下拉列表标签
2015/08/20 Javascript
jQuery实现摸拟alert提示框
2016/05/22 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
BootStrap Datetimepicker 汉化的实现代码
2017/02/10 Javascript
提高Node.js性能的应用技巧分享
2017/08/10 Javascript
JS闭包的几种常见形式实例详解
2017/09/16 Javascript
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
Node.js中环境变量process.env的一些事详解
2017/10/26 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
javascript递归函数定义和用法示例分析
2020/07/22 Javascript
[01:00:53]OG vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python中除法使用的注意事项
2014/08/21 Python
python针对excel的操作技巧
2018/03/13 Python
python斐波那契数列的计算方法
2018/09/27 Python
修改python plot折线图的坐标轴刻度方法
2018/12/13 Python
HTML5 embed 标签使用方法介绍
2013/08/13 HTML / CSS
乔迁宴答谢词
2014/01/21 职场文书
数控技术应用个人求职信范文
2014/02/03 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
保护动物的标语
2014/06/11 职场文书
公司授权委托书
2014/10/17 职场文书
2015年业务工作总结范文
2015/04/10 职场文书
Python turtle实现贪吃蛇游戏
2021/06/18 Python
MySQL之MyISAM存储引擎的非聚簇索引详解
2022/03/03 MySQL
Python使用openpyxl模块处理Excel文件
2022/06/05 Python