22 lines
466 B
PHP
22 lines
466 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace KupShop\KupShopBundle\Util\System;
|
|
|
|
class TokenGenerator
|
|
{
|
|
public function generate(int $size): string
|
|
{
|
|
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
|
|
$count = mb_strlen($chars);
|
|
|
|
for ($i = 0, $token = ''; $i < $size; $i++) {
|
|
$index = rand(0, $count - 1);
|
|
$token .= mb_substr($chars, $index, 1);
|
|
}
|
|
|
|
return $token;
|
|
}
|
|
}
|