- mt_rand: documentation ( source)
- rand: documentation ( source)
- getrandmax: documentation ( source)
<?php
/**
* Returns N±(0~n/m) randomness
*
* @param $n int Base number
* @param $m int Fraction of number to use for random/
*
* @return float
*/
function addRandomToN($n, $m) {
$plus = mt_rand(0,1);
if ($plus) {
return $n + (($n/$m) * rand0To1());
}
return $n - (($n/$m) * rand0To1());
}
function rand0To1() {
return (float)rand()/(float)getrandmax();
}
echo addRandomToN(5, 0.1);