This package uses the classes created by hashids.org
Generate hashes from numbers, like YouTube or Bitly. Use hashids when you do not want to expose your database ids to the user.
To get the latest version of Hashids simply require it in your composer.json
file.
"torann/hashids": "1.0.*@dev"
You'll then need to run composer install
to download it and have the autoloader updated.
Once Hashids is installed you need to register the service provider with the application. Open up app/config/app.php
and find the providers
key.
'Torann\Hashids\HashidsServiceProvider'
There is no need to add the Facade, the package will add it for you.
Run this on the command line from the root of your project:
$ php artisan config:publish torann/hashids
This will publish Hashids' config to app/config/packages/torann/hashids/
.
Once you've followed all the steps and completed the installation you can use Hashids.
You can simply encode a single id:
Hashids::encode(1); // Returns Ri7Bi
or multiple..
Hashids::encode(1, 21, 12, 12, 666); // Returns MMtaUpSGhdA
Hashids::decode(Ri7Bi);
// Returns
array (size=1)
0 => int 1
or multiple..
Hashids::decode(MMtaUpSGhdA);
// Returns
array (size=5)
0 => int 1
1 => int 21
2 => int 12
3 => int 12
4 => int 666
1.0.0
-
Several public functions are renamed to be more appropriate:
- Function
encrypt()
changed toencode()
- Function
decrypt()
changed todecode()
- Function
encryptHex()
changed toencodeHex()
- Function
decryptHex()
changed todecodeHex()
Hashids was designed to encode integers, primary ids at most. Hashids is the wrong algorithm to encrypt sensitive data. So to encourage more appropriate use,
encrypt/decrypt
is being "downgraded" toencode/decode
. - Function
-
Version tag added:
1.0
-
README.md
updated
All credit for Hashids goes to Ivan Akimov (@ivanakimov), thanks to for making it!