php从数组中随机选择若干不重复元素的方法_php技巧
May 16, 2016 pm 08:21 PM
php
element
array
method
random selection
本文实例讲述了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 if($i $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
* $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 if($i $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程序设计有所帮助。
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article
Repo: How To Revive Teammates
3 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌
How Long Does It Take To Beat Split Fiction?
3 weeks ago
By DDD
R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌

Hot tools Tags

Hot Article
Repo: How To Revive Teammates
3 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌
How Long Does It Take To Beat Split Fiction?
3 weeks ago
By DDD
R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
1 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago
By 尊渡假赌尊渡假赌尊渡假赌

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian

How To Set Up Visual Studio Code (VS Code) for PHP Development
