kvz / youtube-id
Translates a number to a short alphanumeric version
Requires
- php: ^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.14
- phpunit/phpunit: 7.5.*
This package is not auto-updated.
Last update: 2024-12-20 12:23:16 UTC
README
Translates a number to a short alphanumeric version
Requires:
- PHP 7.0+
Installation:
composer require kvz/youtube-id
Usage:
Don't forget to:
use Kvz\YoutubeId\Converter;
Convert any number up to 9007199254740992 to a shorter version in letters e.g.:
Converter::toAlphanumeric(2188847690240); // C7nXQpS
Convert back from short version in letters to numbers:
Converter::toNumeric('C7nXQpS'); // 2188847690240
If you want the alphaID to be at least 3 letter long, use the $padUp
argument.
In most cases this is better than totally random ID generators because this can easily avoid duplicate ID's.
For example if you correlate the alpha ID to an auto incrementing ID in your database, you're done.
Converter::toAlphanumeric(2188847690240, 3); // C7nXQpS Converter::toNumeric('C7nXQpS', 3); // 2188847686396
Although this function's purpose is to just make the ID short - and not so much secure, with third argument secureKey
you can optionally supply a password to make it harder to calculate the corresponding numeric ID.
Converter::toAlphanumeric(1327301435881, 3, 'Shfu388291ssD'); // C7nXQpS Converter::toNumeric('C7nXQpS', 3, 'Shfu388291ssD'); // 1327301435881
And, for final, you can easy transform alphanumeric result:
Converter::toAlphanumeric(2188847690240, 0, null, Converter::TRANSFORM_UPPERCASE); // C7NXQPS Converter::toAlphanumeric(2188847690240, 0, null, Converter::TRANSFORM_LOWERCASE); // c7nxqps