Let's take a look at some of the numeric functions available in PHP.
There are three different PHP functions for rounding a decimal number to an integer.
You use ceil or floor to round a number up or down to the nearest integer, respectively. For example, ceil(1.3) returns 2, whereas floor(6.8) returns 6.
To round a value to the nearest whole number, you use round. A fractional part under .5 will be rounded down, whereas .5 or higher will be rounded up. For example, round(1.3) returns 1, whereas round(1.5) returns 2.
The round function can also take an optional precision argument. The following example displays a value rounded to two decimal places:
$score = 0.535; echo round($score, 2);
The value displayed is 0.54; the third decimal place being 5 causes the final digit to be rounded up.
You can also use round with a negative precision value to round an integer to a number of significant figures, as in the following example:
$distance = 2834; echo round($distance, -2);
To find the smallest and largest of a group of numbers, you use min and max, respectively. These functions take two or more arguments and return the numerically lowest or highest element in the list, respectively.
This statement will display the larger of the two variables $a and $b:
echo max($a, $b);
There is no limit to the number of arguments that can be compared. The following example finds the lowest value from a larger set of values:
echo min(6, 10, 23, 3, 88, 102, 5, 44);
Not surprisingly, the result displayed is 3.
You use rand to generate a random integer, using your system's built-in random number generator. The rand function optionally takes two arguments that specify the range of numbers from which the random number will be picked.
The following statement picks a random number between 1 and 10 and displays it:
echo rand(1, 10);
You can put this command in a script and run it a few times to see that the number changes each time it is run.
There is really no such thing as a computer-generated random number. In fact, numbers are actually picked from a very long sequence that has very similar properties to true random numbers. To make sure you always start from a different place in this sequence, you have to seed the random number generator by calling the srand function; no arguments are required.
PHP includes many mathematical functions, including trigonometry, logarithms, and number base conversions. As you will rarely need to use these in a web environment, those functions are not covered in this book.
To find out about a function that performs a specific mathematical purpose, refer to the online manual at www.php.net/manual/en/ref.math.php.