This package introduces a simple fluent interface for Hashids package.
You can install the package via composer:
composer require antoninmasek/laravel-hashids
You can publish the config file with:
php artisan vendor:publish --tag="hashids-config"
This is the contents of the published config file:
return [
/**
* If you wish to globally redefine the default alphabet you may do so below. If set to
* null, then the default value defined in the Hashids library is used.
*
* Please make sure your alphabet has at least 16 characters as that is the minimum
* length of the alphabet the Hashids package requires.
*
* The default alphabet choice only includes capital letters, that is to prevent
* possible issues with case-insensitive collations in databases.
*
* @see \Hashids\Hashids::__construct
*/
'alphabet' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890',
/**
* If you wish to globally redefine the default salt you may do so below. If set to
* null, then the default value defined in the Hashids library is used.
*
* @see \Hashids\Hashids::__construct
*/
'salt' => null,
/**
* If you wish to globally redefine the default minimum length of the hash you may do so
* below. If set to null, then the default value defined in the Hashids library is used.
*
* Please note, that this is minimum length and not exact length. This means, that if
* you specify, for example, 5 the resulting hash id can have length of 5 characters
* or more.
*
* @see \Hashids\Hashids::__construct
*/
'min_length' => null,
];
use AntoninMasek\Hashids\Facades\Hashids;
Hashids::encode(1);
Hashids::decode('jR');
// With configuration
Hashids::alphabet('1234567890qwertz')->encode(1);
Hashids::salt('your-salt')
->minLength(10)
->encode(1)
composer test
Please see CHANGELOG for more information on what has changed recently.
The MIT License (MIT). Please see License File for more information.