Je ne suis pas si sûr comment écrire ceci: Je veux générer un nombre aléatoire de 0 à 2, puis écrivez un si code> instruction qui exécute un code spécifique seulement 33% du temps. < p> C'est ce que j'ai essayé de faire: p>
6 Réponses :
Les deux arguments représentent les valeurs aléatoires minimales et maximales. Si vous voulez une chance de 1 en 3, vous ne devez autoriser que 3 possibilités. Aller du minimum de 0 au maximum 3 permet de 4 valeurs possibles (0,1,2,3), de sorte que cela ne fera pas tout à fait ce que vous voulez. En outre, donc ce serait: p> mt_rand () code>
est un meilleur fonction à utiliser que rand () code>.
À cette fin, la différence entre rand () code> et
mt_rand () code> sera très probablement imperceptible ;-)
Votre code exécutera 25% du temps. {0 1 2 3} est un ensemble de 4 chiffres. vous voulez faire p>
si (rand (1,3) == 2) ... code> p>
Remplacer par
if (rand(0, 2)==2) { echo "Success"; }
Les limites RAND () CODE> PHP sont inclusives, vous souhaiteriez donc
si (rand (0,2) == 2) code>. P>.
qui exécute un code spécifique seulement 33% du temps. p> blockQuote>
Voulez-vous simplement souligner que l'utilisation aléatoire ne donnera que le code à 33%
chance fort> d'exécution contraire à l'exécution de l'exécution 1/3 du temps. P>
Je sais que c'est une réponse tardive, mais je ferais pour toute fraction 1 / x code> souhaité, remplacez
0,2 < / code> avec
0, x-1 code> p> p>
Vous devriez faire
rand (0,2) code> pour en faire 33% de chances.
rand (0,3) code> donne 25%.