Home  >  Article  >  Backend Development  >  Random Number Generator in PHP

Random Number Generator in PHP

王林
王林Original
2024-08-29 13:13:13700browse

In this article, we will be learning about a random number generator in PHP. So what is random number generator?

We can generate random numbers or integers using built-in functions. What do these functions do? These functions within a range of min and max generate different sets of numbers. And every time you call this function it will generate a number that is unique. We can generate any numbered digits like 2digit number, 3digit number and so on.

ADVERTISEMENT Popular Course in this category PHP DEVELOPER - Specialization | 8 Course Series | 3 Mock Tests

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

The numbers get shuffled within the range and are generated accordingly. There are various built-in functions to generate random numbers.

Random Number Generator Functions

Now we will be learning about different functions that generate pseudo-random numbers:

  • rand() function without range, rand() function with range: This function when called returns a random number. When the min and max are provided to the function, it generates a random number within the range.
  • mt_rand() function: This function is similar to rand(). mt in mt_rand() stands for Mersenne Twister. The mt_rand() function is a random number generator and returns an integer value. It generates a pseudo-random number like the rand() function does. It was the first pseudo-random number generator. It is an advanced form of older random number generator. It is fast, efficient and provides high-quality integers.
  • getrandmax() function: There are no parameters defined for this function and as the name suggests it returns the largest or maximum possible random number.
  • mt_getrandmax() function: It is similar to getrandmax() function and it also returns the largest or maximum possible random number. Here again mt stands for Mersenne Twister which is an algorithm for generating random numbers.
  • srand(seed) function: This function seeds the random number generator with the given seed value if not given this function seeds with a random number
  • mt_srand(seed): This function is similar to srand() function and this function seeds the random number generator with the given seed value.

We will learn the syntax followed by the examples of each type of function mentioned.

1. rand() Function

Syntax:

rand()

Example:

<?php
// program to generate random integer value
echo '<br>'.'Following are the different random values';
echo '<hr/>';
echo '<br>'. rand();
echo '<hr/>';
echo '<br>'. rand();
echo '<hr/>';
echo '<br>'. rand();
?>

Output:

Random Number Generator in PHP

2. rand() Function within a Given Range

This function provides the range to the rand() function.

Syntax:

rand(min, max);

where min is the optional minimum value and denotes the lowest number value and max is the optional maximum value and denotes the highest numerical value.

Also, min has a default value of zero and max has a default value of getrandmax() function value. The return type of the function is always an integer.

Example:

<?php
// program to generate random integer value
echo 'Following are the different random values within ranges min and max';
echo '<hr/>';
echo '<br> Range : 1 to 100 ----> '. rand(1,100);
echo '<hr/>';
echo '<br> Range 5 to 25 ---->'. rand(5, 25);
echo '<hr/>';
echo '<br>Range 10000 to 50000 --->'. rand(10000, 50000);
?>

Output:

Random Number Generator in PHP

3. mt_rand() Function

Syntax:

int mt_rand(min, max)

where min is optional value and denotes the lowest number and max is optional value and denotes the highest number. The default value of min is 0 and the default value of max is the given highest value. The return type is an integer.

Example:

<?php
// program to generate random integer value
echo 'Following are the different random values using mt_rand()';
echo '<hr/>';
echo '<br> Range : 1 to 100 ----> '. mt_rand(1,100);
echo '<hr/>';
echo '<br> Range 5 to 25 ---->'. mt_rand(5, 25);
echo '<hr/>';
echo '<br>Range 9 to 19 --->'. mt_rand(9, 19);
?>

Output:

Random Number Generator in PHP

4. getrandmax() Function

Syntax:

mt_getrandmax();

This function returns an integer value

Example:

<?php
// program to generate random integer values
//using getrandmax() function
echo 'Random number using getrandmax() function';
echo '<hr/>';
echo(getrandmax());
echo '<hr>';
?>

Output:

Random Number Generator in PHP

5. mt_getrandommax() Function

Syntax:

mt_getrandmax();

This function returns an integer value.

Example:

<?php
// program to generate random integer values
//using mt_getrandmax() function
echo 'random number using mt_getrandmax() function';
echo '<hr/>';
echo(mt_getrandmax());
?>

Output:

Random Number Generator in PHP

6. srand() Function

Syntax:

srand(seed);

Where the seed is an optional value, and this function does not return anything.

Example:

<?php
// program to generate random integer value
echo 'example using srand';
echo '<br>'. srand(3);
echo(rand(1, 5));
echo '<hr>';
echo 'example using srand';
echo '<br>'. srand(2);
echo(rand(1, 5));
?>

Output:

Random Number Generator in PHP

7. mt_srand() Function

Example:

<?php
// program to generate random integer value using mt_srand() function
echo 'example using mt_srand';
echo '<hr>';
mt_srand(5);
echo mt_rand(1,5);
?>

Output:

Random Number Generator in PHP

Generation Integers

In the following example we have used rand(),rand(min,max) and mt_rand().

Code:

<?php
// program to generate random integer value
echo 'Following are the different random values';
echo '<br> Any random number ---->'. rand();
echo '<br> Any random number ---->'. rand();
echo '<hr>';
// random number with range
echo 'Following are the different random values within a range ';
echo '<br> Any random number within the range from 0 to 9----> '. rand(0,9);
echo '<br>Any random number within the range from 1000  to 9999 ---->'. rand(1000,9999);
echo '<hr>';
// random number with range
echo 'Following are the different random values using mt_rand() ';
echo '<br> Using mt_rand()---->'. mt_rand(1000,9999);
echo '<br> Using mt_rand()---->'. mt_rand(100,999);
?>

Output:

Random Number Generator in PHP

Generation Floating-Point Numbers

Floating-point numbers represent a number with decimals that are of the type float. Examples – 10.0, 8.12, 6.23e-5, 2.345, 2.98e+10 and more.

Code:

<?php
function fun($min, $max) {
$square_root = sqrt(4);
return mt_rand($min * $square_root, $max * $square_root) /  100;
}
echo 'Program to display floating point numbers ';
echo '<hr>';
echo "<br>".fun(1, 10, 2);
?>

Output:

Random Number Generator in PHP

Conclusion

In this article, we learned about various functions used to generate a random number in PHP. These functions are explained with sample examples. Hope this article is found useful to anyone who wants to learn a random number generator in PHP.

The above is the detailed content of Random Number Generator in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:PHP base64_decodeNext article:PHP base64_decode