Rumah > pembangunan bahagian belakang > tutorial php > php随机从数组中抽取元素的方法

php随机从数组中抽取元素的方法

墨辰丷
Lepaskan: 2023-03-31 19:16:01
asal
2562 orang telah melayarinya

这篇文章主要介绍了php从数组中随机选择若干不重复元素的方法,涉及php数组操作的相关常用技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了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(&#39;Hello Sailor&#39;,&#39;Acid Test&#39;,&#39;Bear Garden&#39;,&#39;Botch A Job&#39;,&#39;Dark Horse&#39;,
    &#39;In The Red&#39;,&#39;Man Up&#39;,&#39;Pan Out&#39;,&#39;Quid Pro Quo&#39;,&#39;Rub It In&#39;,&#39;Turncoat&#39;,
    &#39;Yes Man&#39;,&#39;All Wet&#39;,&#39;Bag Lady&#39;,&#39;Bean Feast&#39;,&#39;Big Wig&#39;, &#39;Big Wig&#39;,&#39;Bear Garden&#39;
    ,&#39;All Wet&#39;,&#39;Quid Pro Quo&#39;,&#39;Rub It In&#39;);
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
Salin selepas log masuk

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php操作MySQL数据库及session对话的方法

php正则匹配与替换回调内容标签的方法

PHP正则表达式验证Email的方法

Atas ialah kandungan terperinci php随机从数组中抽取元素的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan