Howdy,

I've seen this topic posted once before, but without ever reaching a
conclusion.  The earlier posting is at
http://marc.theaimsgroup.com/?l=php-general&m=105414659615227&w=3

The problem:  rand(min, max) always returns min on some systems.

rand(), mt_rand, and mt_rand(min, max) all work fine.

I've seen this fail on the following systems:

        4.3.4/apache2/solaris 8 sparc
        4.3.4/apache2/solaris 9 sparc
        5.0.0b2/apache2/solaris 9 sparc

But it works on 

        4.3.0/apache2/win2k
        4.3.4/apache2/solaris 8 sparc

All of the systems where it fails have /dev/*random on them.
All of the systems where it works do not have /dev/*random on them.

Code to test:

<?PHP
echo "version "           . phpversion()   . "<P>";
echo "rand():  "          . rand()         . "<P>";  // works
echo "rand(1,100):  "     . rand(1,100)    . "<P>";  // fails; always
returns 1
echo "mt_rand():  "       . mt_rand()      . "<P>";  // works
echo "mt_rand(1,100):  "  . mt_rand(1,100) . "<P>";  // works
?> 

Any insight or pointers as to why this might be failing will be appreciated.

Thanks,

jeff

Reply via email to