php从数组中随机选择いくつかの唯一元素
-
- /*
- * $array = フィルタリングされる配列
- * $total = 返されるアイテムの最大数
- * $unique = フィルタリングされるかどうかランダムなリストを取得する前に重複を削除しないか
- */
- 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 < $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 '、'オール ウェット'、'バッグ レディ'、'ビーン フィースト'、'ビッグ ウィッグ'、'ビッグ ウィッグ'、'ベア ガーデン'
- 、'オール ウェット'、'クイッド プロ クオ'、'ラブ イット イン') ;
-
- print_r(unique_array($phrases, 1)); // 1 つの結果を返します
- print_r(unique_array($phrases, 5)); // 5 つの一意の結果を返します
- print_r(unique_array($phrases, 5, false)); // 5 つの結果を返しますが、重複がある可能性があります if
- // 元の配列に重複があります
- print_r(unique_array($phrases, 100)); // 100 個の一意の結果を返します
- print_r(unique_array($phrases, 100, false)); // 100 件の結果を返しますが、重複する可能性があります if
- // 元の配列に重複があります
复制代码
|