eonx-com/easy-random

Provides easy way to generate random values (string, int, uuids, ...)

5.10.1 2024-03-21 10:51 UTC

This package is auto-updated.

Last update: 2024-03-21 10:55:42 UTC


README

---eonx_docs--- title: Introduction weight: 0 ---eonx_docs---

Do you need to generate random and unique values? This package is for you!

  • Strings
  • Numbers
  • UUIDs

All the randomness you need!


Require package (Composer)

The recommended way to install this package is to use Composer:

$ composer require eonx-com/easy-random

Usage

Integers

// Will generate a random integer between 0 and 20 (both included)
$myNumber = (new \EonX\EasyRandom\Generators\RandomGenerator(...))->integer(0, 20);

Strings

The random generator allows you to control the length, and the composition of the generated random strings via a nice fluent interface:

$myString = (new \EonX\EasyRandom\Generators\RandomGenerator(...))
    ->string(16)
    ->excludeSimilar() // Will exclude similar characters
    ->excludeVowel() // Will exclude vowels, nice trick to avoid "bad words" in generated random strings
    ->includeNumeric(); // Include 0-9 numbers

Do you need to generate random strings for your end users?

// Will generate "user friendly" random string:
// - exclude ambiguous characters
// - exclude symbols
// - exclude vowels
// - include numeric
// - include uppercase

$reference = (new \EonX\EasyRandom\Generators\RandomGenerator(...))
    ->string(16)
    ->userFriendly();

UUID

The random generator allows you to generate UUID. This package comes with built-in implementations for: ramsey/uuid, symfony/uid. If you want to use your own, then you will need to make sure it implements EonX\EasyRandom\Interfaces\UuidGeneratorInterface.

$uuid = (new \EonX\EasyRandom\Generators\RandomGenerator(...))->uuid();