Heim  >  Artikel  >  Backend-Entwicklung  >  Fünf Möglichkeiten, sich nicht wiederholende Zufallszahlen in PHP zu generieren

Fünf Möglichkeiten, sich nicht wiederholende Zufallszahlen in PHP zu generieren

黄舟
黄舟Original
2017-11-10 14:15:3711883Durchsuche

Im vorherigen Artikel habe ich die Methode zur Generierung von Zufallszahlen in PHP vorgestellt. Wir alle wissen, dass PHP-Zufallszahlen ein unverzichtbarer Bestandteil sind, egal ob in der Entwicklung oder in mobilen Anwendungen Deshalb stelle ich Ihnen heute fünf Möglichkeiten vor, PHP-Zufallszahlen ohne Wiederholung zu generieren!

Erster Weg:

<?php 
$numbers = range (1,50); 
//shuffle 将数组顺序随即打乱 
shuffle ($numbers); 
//array_slice 取该数组中的某一段 
$num=6; 
$result = array_slice($numbers,0,$num); 
print_r($result); 
?>

Zweiter Weg

<?php 
$numbers = range (1,20); 
//播下随机数发生器种子,可有可无,测试后对结果没有影响
srand ((float)microtime()*1000000); 
shuffle ($numbers); 
//跳过list第一个值(保存的是索引)
while (list(, $number) = each ($numbers)) { 
echo "$number "; 
} 
?>

Dritte Weg-Methoden

<?php 
function NoRand($begin=0,$end=20,$limit=5){ 
$rand_array=range($begin,$end); 
shuffle($rand_array);//调用现成的数组随机排列函数 
return array_slice($rand_array,0,$limit);//截取前$limit个 
} 
print_r(NoRand()); 
?>


Das Obige kann 5 sich nicht wiederholende PHP-Zufallszahlen zwischen 1 und 20 generieren

Vierte Die fünfte Methode

<?php 
$tmp=array(); 
while(count($tmp)<5){ 
$tmp[]=mt_rand(1,20); 
$tmp=array_unique($tmp); 
} 
print_r($tmp);
?>


Die fünfte Methode

<?php 
$tmp = range(1,30);
print_r(array_rand($tmp,10));
?>

Dies ist möglicherweise einfacher als die ursprüngliche Methode (ps: Wenn die Schrittgröße im Bereich angegeben ist, muss darauf geachtet werden, ob der zweite Parameter von array_rand die Länge von $tmp überschreitet).

Zusammenfassung:

PHP bietet eine sehr umfangreiche Array-Funktion. Die meisten PHP-Zufallszahlen können aus der Perspektive generiert werden Wenn Sie eine bessere Methode haben, hoffe ich, dass dieser Artikel als Ausgangspunkt dienen kann.

Verwandte Empfehlungen:

So generieren Sie Zufallszahlen in PHP


PHP-Zufallszahl


PHP-Zufallszahl WeChat Red Envelope Zufallsgenerierungsalgorithmus PHP-Version


Das obige ist der detaillierte Inhalt vonFünf Möglichkeiten, sich nicht wiederholende Zufallszahlen in PHP zu generieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn