Skip to content

Random Extension Polyfill for PHP

License

BSD-3-Clause, Unknown licenses found

Licenses found

BSD-3-Clause
LICENSE.md
Unknown
COPYING.adoc
Notifications You must be signed in to change notification settings

arokettu/php-random-polyfill

Repository files navigation

Random Extension Polyfill for PHP

Packagist PHP Packagist Gitlab pipeline status Codecov

This is a polyfill for the new ext-random extension that will be released with PHP 8.2.

RFC:

Requirements

  • PHP 7.1
  • GMP extension

Installation

composer require 'arokettu/random-polyfill'

Compatibility

The library is compatible with ext-random as released in PHP 8.2.0 beta 1.

What works

  • Random\Randomizer
    • getInt($min, $max)
    • getInt()
  • Engines
    • Random\Engine interface
    • Random\CryptoSafeEngine interface
    • Secure Engine: Random\Engine\Secure
    • Mersenne Twister: Random\Engine\Mt19937

TODO

  • Random\Randomizer
    • getBytes($length)
    • shuffleArray($array)
    • shuffleBytes($bytes)
    • pickArrayKeys($array, $num)
  • Keep updating with fixes from the upcoming betas and release 1.0.0 around PHP 8.2.0 rc 1
  • Empty arokettu/random-polyfill v1.99 for PHP 8.2.0 users
  • Other engines
    • Maybe
    • Some day
    • If I have time
    • Don't count on it

Documentation

Read full documentation here: https://sandfox.dev/php/random-polyfill.html

Also on Read the Docs: https://php-random-polyfill.readthedocs.io/

Support

Please file issues on our main repo at GitLab: https://gitlab.com/sandfox/php-random-polyfill/-/issues

License

The library is available as open source under the terms of the 3-Clause BSD License. See COPYING.adoc for additional licenses.

About

Random Extension Polyfill for PHP

Topics

Resources

License

BSD-3-Clause, Unknown licenses found

Licenses found

BSD-3-Clause
LICENSE.md
Unknown
COPYING.adoc

Stars

Watchers

Forks

Packages

No packages published

Languages