2017 © Pedro Peláez
 

library mt-rand

PHP implementation of the MT19937 algorithm

image

leigh/mt-rand

PHP implementation of the MT19937 algorithm

  • Monday, May 2, 2016
  • by lt
  • Repository
  • 1 Watchers
  • 6 Stars
  • 3,105 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 2 Versions
  • 11 % Grown

The README.md

Mersenne Twister written in PHP

This library contains pure PHP implementations of the Mersenne Twister pseudo-random number generation algorithm., (*1)

There are 3 classes available, (*2)

MersenneTwister\MT

This is the Mersenne Twister algorithm as defined by the algorithm authors., (*3)

It works on both 32 and 64 bit builds of PHP and outputs 32 bit integers., (*4)

$mt = new \MersenneTwister\MT();
$mt->init(1234); // mt_srand(1234);
$mt->int31();    // int31() per mt19937ar.c, positive values only
$mt->int32();    // int32() per mt19937ar.c, high bit sets sign

MersenneTwister\MT64

This is the 64-bit Mersenne Twister algorithm as defined by the algorithm authors., (*5)

It works only on 64 bit builds of PHP and outputs 64 bit integers., (*6)

$mt = new \MersenneTwister\MT64();
$mt->init(1234);
$mt->int63();    // int63() per mt19937-64.c, positive values only
$mt->int64();    // int64() per mt19937-64.c, high bit sets sign

MersenneTwister\PHPVariant

This is the Mersenne Twister algorithm as defined in PHP 5.2.1+. It is slightly different from the original algorithm and outputs a different set of numbers, (*7)

It works on both 32 and 64 bit builds of PHP and outputs 32 bit integers., (*8)

$mt = new \MersenneTwister\MT();
$mt->init(1234);     // mt_srand(1234);
$mt->int31();        // mt_rand();

// Breaks on huge ranges (i.e. PHP_INT_MIN, PHP_INT_MAX)
// PHP also breaks on huge ranges, but breaks differently.
$mt->rand(min, max); // mt_rand(min, max);

The Versions

02/05 2016

dev-master

9999999-dev https://github.com/lt/PHP-MT19937

PHP implementation of the MT19937 algorithm

  Sources   Download

MIT

The Requires

  • php >=5.5

 

The Development Requires

random prng rng mersenne twister

25/02 2016

0.1.0

0.1.0.0 https://github.com/lt/PHP-MT19937

PHP implementation of the MT19937 algorithm

  Sources   Download

MIT

The Requires

  • php >=5.5

 

The Development Requires

random prng rng mersenne twister