Back-End

23 nov, 2018

Gerando strings e números aleatórios em PHP com a RandomLib

Publicidade

Fala pessoal, tudo bom? Estamos aqui para mais um artigo de ferramentas PHP que são muito boas para o nosso dia a dia. E, hoje vou apresentar para vocês a RandomLib. Uma biblioteca PHP criada pelo Anthony Ferrara (ircmaxell) para gerarmos strings e números aleatórios para usarmos como hash ou como password para seus projetos.

Vamos a utilização da biblioteca.

Primeiramente vamos realizar o download da biblioteca pelo composer e a utilização no nosso projeto. Para exemplificar criaremos uma pasta randomlib e rodaremos o comando:

composer require ircmaxell/random-lib

Com isso, vamos ver um pouco como funciona a geração dos números e strings. A parte legal dessa biblioteca é que você pode definir a força do que é gerado. Na chamada, você pode definir como low (fraca), medium  (média) ou high (forte). Vamos criar um arquivo random.php com o código abaixo:

<?php

require_once 'vendor/autoload.php';

// criando uma nova factory
$factory = new RandomLib\Factory; 

// para força média coloque getMediumStrengthGenerator, para uma força maior coloque getHighStrengtGenerator
$generator = $factory->getMediumStrengthGenerator(); 

// Gerar uma string de bytes aleatória com 20 caracteres
$string20 = $generator->generate(20);
echo ($string20 . PHP_EOL); //apenas para mostrar o resultado

// Gerando um número aleatório entre qualquer inteiro suportado pelo PHP
$randomInt = $generator->generateInt(0);
echo ($randomInt . PHP_EOL); //apenas para mostrar o resultado

// Gerando um número aleatório entre 10 e 50
$randomInt1050 = $generator->generateInt(10, 50);
echo ($randomInt1050 . PHP_EOL); //apenas para mostrar o resultado

// Gerando uma string aleatória com 20 caracteres 
$randomString = $generator->generateString(20);
echo ($randomString . PHP_EOL); //apenas para mostrar o resultado

// Gerando uma string aleatória com 30 caracteres contendo apenas as letras
// 'a', 'b', 'c', 'd', 'e', e 'f'.
$randomString30 = $generator->generateString(30, 'abcdef');
echo ($randomString30 . PHP_EOL); //apenas para mostrar o resultado

E, os resultados são mais ou menos assim:

Espero que essa biblioteca ajude vocês a gerar coisas aleatórias em PHP. Valeu demais, até a próxima!