Résumé des méthodes pour générer des nombres aléatoires non répétitifs en PHP

不言
Libérer: 2023-03-30 06:34:01
original
1538 Les gens l'ont consulté

Cet article présente principalement un résumé des méthodes de génération de nombres aléatoires non répétitifs en PHP. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Cet article. résume 5 types de génération.Les méthodes pour ne pas répéter les nombres aléatoires.Les méthodes 1, 2 et 3 sont mes méthodes couramment utilisées.Les méthodes 4 et 5 viennent de Du Niang. Il existe encore d'autres méthodes, et chacun est invité à nous faire part des méthodes manquantes, afin que nous puissions progresser ensemble

Qu'il s'agisse d'une application web, d'un WAP ou d'une application mobile, les nombres aléatoires ont leur place . Dans plusieurs petits projets auxquels j'ai été exposé récemment, j'ai souvent besoin de traiter des nombres aléatoires ou des tableaux aléatoires. Par conséquent, je vais résumer quelques méthodes courantes pour générer des nombres aléatoires non répétitifs en PHP.

Première méthode :

Copier le code Le code est le suivant :

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

Méthode deux :

Copier le codeLe code est le suivant :

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

Troisième méthode :

Copiez le code Le code est le suivant :

<?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()); 
?>
Copier après la connexion

Ce qui précède peut être compris entre 1 et 20 Générer aléatoirement 5 valeurs uniques

Méthode 4 :

Copiez le code Le code est le suivant :

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

Méthode 5 :

Copier le codeLe code est le suivant :

<?php 
$tmp = range(1,30);
print_r(array_rand($tmp,10));
?>
Copier après la connexion

Cela peut être plus simple que ça (ps : si le la taille du pas est spécifiée dans la plage, vous devez faire attention à la deuxième partie de array_rand si le paramètre dépasse la longueur de $tmp).

PHP fournit un ensemble très riche de fonctions de tableau. La plupart des nombres aléatoires peuvent être générés du point de vue des tableaux. Bien sûr, si vous avez une meilleure méthode, veuillez nous le faire savoir. point de départ.

Recommandations associées :

php génère la fonction de code de vérification, php génère un code de vérification

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal