Generating a random number in PHP is very simple and like most things, can be done a number of different ways. The old standby is to use the function `rand()`

to to generate a random integer between the minimum and maximum values that you provide. To generate a number between 1 and 100 you would do this:

At this point, `rand()`

basically exists for backwards compatibility’s sake. The newer / preferred function to use is `mt_rand()`

which addresses speed concerns with the former and clocks in at 4 times faster. The “MT” in the name referred to Mersenne Twister which is an alternative random number generator to `libcs`

. You use this function in the same way:

This is great for generating random integers, but what if you want a random decimal value? There’s actually not a function to do so, but you could easily divide a random number by a larger number or slap a decimal at the beginning of the value to achieve the desired results.

On a side note, as of PHP 4.2.0 you no longer need to concern yourself with seeding the random number generator (hence why it wasn’t mentioned here ;)