"Note: As of PHP 7.1.0, rand() uses the same random number generator as mt_rand(). To preserve backwards compatibility rand() allows max to be smaller than min as opposed to returning FALSE as mt_rand()."
Maybe somebody could run the code from the OP on Windows with a newer PHP and check?
https://www.php.net/manual/en/function.rand.php
"Note: As of PHP 7.1.0, rand() uses the same random number generator as mt_rand(). To preserve backwards compatibility rand() allows max to be smaller than min as opposed to returning FALSE as mt_rand()."
Maybe somebody could run the code from the OP on Windows with a newer PHP and check?