Home  >  Article  >  Backend Development  >  PHP random number code PHP method to generate random numbers_PHP tutorial

PHP random number code PHP method to generate random numbers_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 14:54:271103browse

Today, a friend asked about the random numbers of Agni PHP. This is a basic question of PHP. You can refer to the PHP manual provided by Agni. Due to time constraints, I was too lazy to write it and looked for it online. Some examples, taken together, I hope it will be helpful to everyone. If you have any questions, please ask them below.

//seed User-defined function uses microseconds as seed
function seed()
{
list($msec, $sec) = explode(' ', microtime());
return (float) $sec;
}
//Sow the seed of the random number generator and use the srand function to call the return result of the seed function
srand(seed()) ;
//Output the generated random number, the range of the random number is 10-100
echo rand(10,100);
?>
Isn’t the above one no different from the one below? They are both Randomly output numbers between 10 and 100. For newbies, this may be too simple.
echo rand(10,100);
?>

mt_rand(10,100);
srand is the seed, if not set, the default is 1
rand is generally a fixed operation that uses seeds as parameters

You will know after trying it , do not set a seed or set a fixed seed, run rand
, then close the browser and reopen it, run rand
again, you will find that the result is always the same
but if you use a random number as the seed , then each running result will be approximately random

Let’s talk about the rand() function first, rand([int min], [int max]) This function takes a random number between min and max. If the maximum and minimum range of random numbers are not specified, this function will automatically pick a random number from 0 to RAND_MAX.

But if you only use the rand() function, the random number will be very disordered. It is best to use the srand() function every time before taking the random number to configure a new random number seed.

Explain the following usage (this is how these two functions are generally used):
srand((double)microtime()*1000000);
$rand_number= rand();

microtime() returns two values: the current millisecond and the timestamp. If we want to extract a random number, we can only take a random number from milliseconds. (double)microtime() only returns the current millisecond value.
Microtime() is the number of milliseconds in seconds, so the values ​​are all decimals. Multiply by 1000000 to convert them to integers.

;Their workflow is as follows:
(1): First, provide a "seed" to srand();, which is a value of type unsigned_int.
(2):_Then, call rand(), which will return a random number based on the value provided to srand() (range between 0~32767)
(3): As many times as needed Call rand() to continuously get new random numbers.
(4): A new "seed" can be provided to srand() at any time, thereby further "randomizing" the
output results of rand().

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/364638.htmlTechArticleToday, a friend asked about Agni PHP random numbers. This is a basic issue in PHP. You can refer to Agni The PHP manual provided, due to time constraints, the editor is too lazy to write it, online...
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