From:             sv4php at fmethod dot com
Operating system: Windows XP
PHP version:      5.2.6
PHP Bug Type:     *Math Functions
Bug description:  rand() after array_rand() produces the same numbers

Description:
------------
This was discovered by another guy who asked me to verify it on my
configuration (and I confirmed it). I'm not sure he reported it, so just in
case I do as well.

The example source code produced 989, 377, 989, 377 from rand() ad
infinitum under Windows XP, Apache 2.2, PHP 5.2.6.

Important:

- Linux apparently not affected.
- mt_rand() apparently not affected.

Reproduce code:
---------------
function RandomNumber() {
        $f1 = array();

        for ($i = 0; $i < 50000; $i++) {                
                $f1[] = true;
        }       
                        
        $k = array_rand($f1);
        
        $rnum = rand(1,999);    
        
        return $rnum;
}

for ($i = 0; $i < 20; $i++) {
        
        echo RandomNumber()."\n"; // produces a sequence of 377, 989, 377, 989,
377, 989, 377...  here
}

Expected result:
----------------
Random numbers.

Actual result:
--------------
Same number or narrow repeated sequence.

-- 
Edit bug report at http://bugs.php.net/?id=45302&edit=1
-- 
Try a CVS snapshot (PHP 5.2): 
http://bugs.php.net/fix.php?id=45302&r=trysnapshot52
Try a CVS snapshot (PHP 5.3): 
http://bugs.php.net/fix.php?id=45302&r=trysnapshot53
Try a CVS snapshot (PHP 6.0): 
http://bugs.php.net/fix.php?id=45302&r=trysnapshot60
Fixed in CVS:                 http://bugs.php.net/fix.php?id=45302&r=fixedcvs
Fixed in release:             
http://bugs.php.net/fix.php?id=45302&r=alreadyfixed
Need backtrace:               http://bugs.php.net/fix.php?id=45302&r=needtrace
Need Reproduce Script:        http://bugs.php.net/fix.php?id=45302&r=needscript
Try newer version:            http://bugs.php.net/fix.php?id=45302&r=oldversion
Not developer issue:          http://bugs.php.net/fix.php?id=45302&r=support
Expected behavior:            http://bugs.php.net/fix.php?id=45302&r=notwrong
Not enough info:              
http://bugs.php.net/fix.php?id=45302&r=notenoughinfo
Submitted twice:              
http://bugs.php.net/fix.php?id=45302&r=submittedtwice
register_globals:             http://bugs.php.net/fix.php?id=45302&r=globals
PHP 4 support discontinued:   http://bugs.php.net/fix.php?id=45302&r=php4
Daylight Savings:             http://bugs.php.net/fix.php?id=45302&r=dst
IIS Stability:                http://bugs.php.net/fix.php?id=45302&r=isapi
Install GNU Sed:              http://bugs.php.net/fix.php?id=45302&r=gnused
Floating point limitations:   http://bugs.php.net/fix.php?id=45302&r=float
No Zend Extensions:           http://bugs.php.net/fix.php?id=45302&r=nozend
MySQL Configuration Error:    http://bugs.php.net/fix.php?id=45302&r=mysqlcfg

Reply via email to