Метод toBase58
Метод toBase58 класса Uuid
преобразует бинарное значение UUID
в строку, закодированную в системе счисления Base58.
Base58 использует алфавит без похожих символов
(без 0, O, I, l),
что делает её удобной для коротких идентификаторов.
Метод не принимает параметров и возвращает строку.
Кодировка Base58 часто применяется для компактного представления UUID в URL, токенах и ключах доступа.
Синтаксис
public function toBase58(): string
Пример
Давайте создадим UUID версии 4 и получим его представление в Base58:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Uid\Uuid;
class UuidController extends AbstractController
{
public function index(): Response
{
$uuid = Uuid::v4();
$base58 = $uuid->toBase58();
return new Response($base58);
}
}
?>
Результат выполнения кода:
"3wR2Zk9pQvXbNmT7cHsYdL"
Пример
Давайте создадим UUID из строки и закодируем его в Base58:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Uid\Uuid;
class UuidController extends AbstractController
{
public function index(): Response
{
$uuid = Uuid::fromString('123e4567-e89b-12d3-a456-426614174000');
$base58 = $uuid->toBase58();
return new Response($base58);
}
}
?>
Результат выполнения кода:
"2r81XpMtHXqLbYcT7vWnZa"
Пример
Давайте выведем Base58-представление нескольких UUID в массиве:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Uid\Uuid;
class UuidController extends AbstractController
{
public function index(): Response
{
$res = [];
$res[] = Uuid::v1()->toBase58();
$res[] = Uuid::v4()->toBase58();
$res[] = Uuid::v7()->toBase58();
return new Response(implode(', ', $res));
}
}
?>
Результат выполнения кода:
"5Kd9Qm2XvTbNpLc7wHsY, 3wR2Zk9pQvXbNmT7cHsYdL, 7Bn4Yt6RwQpXmKc2vHsZd"
Смотрите также
-
класс
Uuid,
который представляет уникальный идентификатор -
метод
toBase32,
который кодирует UUID в Base32 -
метод
toRfc4122,
который возвращает UUID в стандартном формате -
метод
fromString,
который создаёт UUID из строки