php從數(shù)組中隨機選擇若干不重復元素的方法
更新時間:2015年03月14日 10:42:43 作者:work24
這篇文章主要介紹了php從數(shù)組中隨機選擇若干不重復元素的方法,涉及php數(shù)組操作的相關常用技巧,非常具有實用價值,需要的朋友可以參考下
本文實例講述了php從數(shù)組中隨機選擇若干不重復元素的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
復制代碼 代碼如下:
<?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
/*
* $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合并數(shù)組函數(shù)array_merge用法分析
這篇文章主要介紹了PHP合并數(shù)組函數(shù)array_merge用法,結(jié)合實例形式分析了php數(shù)組合并函數(shù)array_merge的具體功能、使用方法與相關注意事項,需要的朋友可以參考下2017-02-02
PHP使用new StdClass()創(chuàng)建空對象的方法分析
這篇文章主要介紹了PHP使用new StdClass()創(chuàng)建空對象的方法,結(jié)合具體實例形式分析了php空對象的創(chuàng)建與使用方法,需要的朋友可以參考下2017-06-06
PHP函數(shù)按引用傳遞參數(shù)及函數(shù)可選參數(shù)用法示例
這篇文章主要介紹了PHP函數(shù)按引用傳遞參數(shù)及函數(shù)可選參數(shù)用法,結(jié)合實例形式分析了php函數(shù)的引用傳參與可選參數(shù)具體使用技巧與注意事項,需要的朋友可以參考下2018-06-06

