antoninmasek / laravel-hashids
Simple Laravel wrapper around Hashids library.
Installs: 7 394
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 1
Open Issues: 0
Requires
- php: ^8.1
- hashids/hashids: ^5.0
- illuminate/contracts: ^10.0 || ^11.0
- spatie/laravel-package-tools: ^1.14.1
Requires (Dev)
- laravel/pint: ^1.5
- orchestra/testbench: ^8.0 || ^9.0
- phpunit/phpunit: ^10.1
- spatie/laravel-ray: ^1.32.2
README
This package introduces a simple fluent interface for Hashids package.
Installation
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, ];
Usage
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)
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Credits
License
The MIT License (MIT). Please see License File for more information.