2017 © Pedro Peláez
 

library hashids

Laravel package for Hashids

image

mitch/hashids

Laravel package for Hashids

  • Thursday, September 18, 2014
  • by mitchellvanw
  • Repository
  • 4 Watchers
  • 106 Stars
  • 60,068 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 23 Forks
  • 4 Open issues
  • 3 Versions
  • 3 % Grown

The README.md

Hashids for Laravel 4

This package uses the classes created by hashids.org, (*1)

Generate hashes from numbers, like YouTube or Bitly. Use hashids when you do not want to expose your database ids to the user., (*2)

Installation

Begin by installing the package through Composer. Edit your project's composer.json file to require mitch/hashids., (*3)

php "require": { "mitch/hashids": "1.x" }, (*4)

Next use Composer to update your project from the the Terminal:, (*5)

php php composer.phar update, (*6)

Once the package has been installed you'll need to add the service provider. Open your app/config/app.php configuration file, and add a new item to the providers array., (*7)

php 'Mitch\Hashids\HashidsServiceProvider', (*8)

After doing this you also need to add an alias. In your app/config/app.php file, add this to the aliases array., (*9)

php 'Hashids' => 'Mitch\Hashids\Hashids', (*10)

Now last but not least you need to publish to package configuration from your Terminal:, (*11)

php php artisan config:publish mitch/hashids, (*12)

Usage

Once you've followed all the steps and completed the installation you can use Hashids., (*13)

Encoding

You can simply encrypt on id:, (*14)

php Hashids::encode(1); // Creating hash... Ri7Bi, (*15)

or multiple.., (*16)

php Hashids::encode(1, 21, 12, 12, 666); // Creating hash... MMtaUpSGhdA, (*17)

Decoding

It's the same thing but the other way around:, (*18)

```php Hashids::decode('Ri7Bi');, (*19)

// Returns array (size=1) 0 => int 1 ```, (*20)

or multiple.., (*21)

```php Hashids::decode('MMtaUpSGhdA');, (*22)

// Returns array (size=5) 0 => int 1 1 => int 21 2 => int 12 3 => int 12 4 => int 666 ```, (*23)

Injecting Hashids

Now it's also possible to have Hashids injected into your class. Lets look at this controller as an example.., (*24)

```php class ExampleController extends BaseController { protected $hashids;, (*25)

  public function __construct(Hashids\Hashids $hashids)
  {
      $this->hashids = $hashids;
  }

  public function getIndex()
  {
      $hash = $this->hashids->encode(1);
      return View::make('example.index', compact('hash'));
  }

} ``` The original classname and namespace has been bound in the IoC container to return our instantiated Hashids class., (*26)

Using IoC

Create a Hashids instance with the IoC, (*27)

php App::make('Hashids\Hashids')->encode(1);, (*28)

That's it!

Documentation about Hashids can be found here., (*29)

Thanks to Ivan Akimov (@ivanakimov) for making Hashids. All credits for the Hashids package go to him., (*30)

The Versions

18/09 2014

dev-master

9999999-dev

Laravel package for Hashids

  Sources   Download

The Requires

 

18/09 2014

1.0

1.0.0.0

Laravel package for Hashids

  Sources   Download

The Requires

 

17/09 2014

0.1

0.1.0.0

Laravel package for Hashids

  Sources   Download

The Requires