pascaldevink / shortuuid
PHP 7.4+ library that generates concise, unambiguous, URL-safe UUIDs
Installs: 1 452 136
Dependents: 18
Suggesters: 2
Security: 0
Stars: 597
Watchers: 14
Forks: 26
Open Issues: 9
Requires
- php: ^7.4|^8.0|^8.1|^8.2
- brick/math: ^0.9.1|^0.10|^0.11
- ramsey/uuid: ^4
Requires (Dev)
- phpunit/phpunit: ^9.6
This package is auto-updated.
Last update: 2024-12-12 06:42:27 UTC
README
shortuuid
is a simple php library that generates concise, unambiguous, URL-safe UUIDs.
Often, one needs to use non-sequential IDs in places where users will see them, but the IDs must be as concise and easy to use as possible. shortuuid solves this problem by translating generated uuids to base57 using lowercase and uppercase letters and digits, and removing similar-looking characters such as l, 1, I, O and 0.
This library is a port of it's python counter-part by Stochastic Technologies: https://github.com/stochastic-technologies/shortuuid
Installation
The preferred method of installation is via Packagist and Composer. Run the following command to install the package and add it as a requirement to your project's composer.json:
composer require pascaldevink/shortuuid
Examples
<?php require 'vendor/autoload.php'; use Ramsey\Uuid\Uuid; use PascalDeVink\ShortUuid\ShortUuid; $uuid = Uuid::fromString('4e52c919-513e-4562-9248-7dd612c6c1ca'); $shortUuid = new ShortUuid(); echo $shortUuid->encode($uuid); // output fpfyRTmt6XeE9ehEKZ5LwF
<?php require 'vendor/autoload.php'; use PascalDeVink\ShortUuid\ShortUuid; $shortUuid = new ShortUuid(); echo $shortUuid->decode('fpfyRTmt6XeE9ehEKZ5LwF'); // outputs 4e52c919-513e-4562-9248-7dd612c6c1ca