leigh/mt-rand 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

leigh/mt-rand

最新稳定版本:0.1.0

Composer 安装命令:

composer require leigh/mt-rand

包简介

PHP implementation of the MT19937 algorithm

README 文档

README

This library contains pure PHP implementations of the Mersenne Twister pseudo-random number generation algorithm.

There are 3 classes available

MersenneTwister\MT

This is the Mersenne Twister algorithm as defined by the algorithm authors.

It works on both 32 and 64 bit builds of PHP and outputs 32 bit integers.

$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.

It works only on 64 bit builds of PHP and outputs 64 bit integers.

$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

It works on both 32 and 64 bit builds of PHP and outputs 32 bit integers.

$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);

统计信息

  • 总下载量: 86.68k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 10
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 10
  • Watchers: 2
  • Forks: 6
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-02-25