Maison > développement back-end > Problème PHP > Quelle est la différence entre php mt_rand() et rand()

Quelle est la différence entre php mt_rand() et rand()

青灯夜游
Libérer: 2023-03-13 12:22:01
original
3012 Les gens l'ont consulté

Différence : 1. Si le paramètre est omis, le nombre aléatoire généré par rand() est compris entre 0 et getrandmax(), tandis que le nombre aléatoire généré par mt_rand() est compris entre 0 et mt_getrandmax( 2. mt_rand()); Les performances sont meilleures que rand().

Quelle est la différence entre php mt_rand() et rand()

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

rand() et mt_rand() génèrent tous deux un entier aléatoire, et il existe deux formes d'utilisation :

int rand() 
int mt_rand()
Copier après la connexion
int rand(int $min, int $max)
int mt_rand($min, $max)
Copier après la connexion

Pour le premier formulaire :

Le nombre aléatoire généré par rand() est compris entre 0 et getrandmax()

Le nombre aléatoire généré par mt_rand() est compris entre 0 et mt_getrandmax()

Pour le deuxième formulaire :

rand() génère un nombre aléatoire de $min à $max

mt_rand() génère un nombre aléatoire de $min à $max

Comparaison :

mt_rand() est meilleur Un générateur de nombres aléatoires car il sème une meilleure graine de nombres aléatoires que rand(); et ses performances sont 4 fois plus rapides que rand(), et la plage de valeurs représentée par mt_getrandmax() est également plus grande

PS : La génération de nombres aléatoires à virgule flottante

Il y a une démo dans le manuel PHP

function randomFloat($min = 0, $max = 1) {
    return $min + mt_rand() / mt_getrandmax() * ($max - $min);
}

var_dump(randomFloat());
var_dump(randomFloat(2, 20));
Copier après la connexion

Apprentissage recommandé : "Tutoriel vidéo PHP"

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:
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