Laravel Baser
Base encode and decode integers with your own specified base
View the package at packagist.org
Requirements
Limits
- Currently only supports integers from 1 to 100000000000000000000000000000 (on 64 bit machines)
Installation
- Include the composer package
composer require elliottlan/laravel-baser
- Add this line to 'Providers' in config/app.php
Elliottlan\LaravelBaser\LaravelBaserServiceProvider::class,
- Add this line to 'Aliases' in config/app.php
'Baser' => Elliottlan\LaravelBaser\Facades\Baser::class,
- Use 'Base' at the top of a controller
use Baser;
- Try an example out
echo Baser::getTokenFromInt(436432278698); // 7GnTmBA
Usage examples
Encode an int
echo Baser::getTokenFromInt(436432278698); // 7GnTmBA
Decode a token
echo Baser::getIntFromToken('7GnTmBA'); // 436432278698
Use big maths (requires php-bcmath)
// calculate above the 32bit limit on old machines
echo Baser::bcMath()->getTokenFromInt(19598531548); // lolrly
echo Baser::bcMath()->getIntFromToken('lolrly'); // 19598531548
Define a codeset and encode/decode
// set codeset to 'ABCEFGHKMNPRSTUVW1235789'
echo Baser::setCodeset('ABCEFGHKMNPRSTUVW1235789')->getTokenFromInt(646464); // B82MA
echo Baser::setCodeset('ABCEFGHKMNPRSTUVW1235789')->getIntFromToken('B82MA'); // 646464
Everything
echo Baser::setCodeset('ABC')->bcMath()->getTokenFromInt(1337);
Simple URL Shortening service using this package
Controller
Model
Migration