Skip to content

Latest commit

 

History

History
executable file
·
72 lines (58 loc) · 2.05 KB

README.md

File metadata and controls

executable file
·
72 lines (58 loc) · 2.05 KB

Laravel Baser

Base encode and decode integers with your own specified base

View the package at packagist.org

Requirements

  • Laravel
  • PHP

Limits

  • Currently only supports integers from 1 to 100000000000000000000000000000 (on 64 bit machines)

Installation

  1. Include the composer package
composer require elliottlan/laravel-baser
  1. Add this line to 'Providers' in config/app.php
Elliottlan\LaravelBaser\LaravelBaserServiceProvider::class,
  1. Add this line to 'Aliases' in config/app.php
'Baser' => Elliottlan\LaravelBaser\Facades\Baser::class,
  1. Use 'Base' at the top of a controller
use Baser;
  1. 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