Download the PHP package roukmoute/hashids-bundle without Composer
On this page you can find all versions of the php package roukmoute/hashids-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download roukmoute/hashids-bundle
More information about roukmoute/hashids-bundle
Files in roukmoute/hashids-bundle
Package hashids-bundle
Short Description Integrates hashids/hashids in a Symfony project
License MIT
Informations about the package hashids-bundle
HashidsBundle
Note: This bundle is maintained, but for new projects, consider using roukmoute/sqids-bundle instead. Sqids is the official successor to Hashids, featuring a simpler algorithm, consistent cross-language output, and a built-in profanity blocklist. However, Sqids is not a drop-in replacement — it produces different IDs. Only migrate if you don't rely on previously generated Hashids. See the official Hashids recommendation for more details.
Integrates hashids/hashids in a Symfony project.
Installation using composer
These commands requires you to have Composer installed globally.
Open a command console, enter your project directory and execute the following
commands to download the latest stable version of this bundle:
Using Symfony Flex
Using Symfony Framework only
If this has not been done automatically, enable the bundle by adding the
following line in the config/bundles.php file of your project:
Configuration
The configuration (config/packages/roukmoute_hashids.yaml) looks as follows :
Usage
Next it's the same things of official documentation.
Hashids Value Resolver
The hashids value resolver attempts to convert any attribute set in the route into an integer parameter.
Using the #[Hashid] attribute
The recommended way is to use the #[Hashid] attribute on your controller parameter:
You can also specify a different route parameter name using the parameter option:
Using route aliases
You can also use hashid or id as route parameter names:
or
Using the _hash_ prefix
You can have several hashids in the same URL using the _hash_ prefix:
The keys must match the controller parameter names:
You will receive a LogicException if an explicit hash could not be decoded correctly.
Using auto_convert
auto_convert tries to convert all arguments in controller.
Based on the example above:
It will not be possible to get an exception of type LogicException from the
bundle if it is activated.
Using passthrough
passthrough allows to continue with the next available value resolvers.
So if you would like to retrieve an object instead of an integer, just activate
passthrough:
Based on the example above:
As you can see, the passthrough feature allows to use EntityValueResolver
or any other ValueResolverInterface you would have created.
Twig Extension
Usage
All versions of hashids-bundle with dependencies
hashids/hashids Version ^4.1 || ^5.0
symfony/http-foundation Version ^6.2 || ^7.0 || ^8.0
symfony/http-kernel Version ^6.2 || ^7.0 || ^8.0
