Skip to content

quile8x/hashid-symfony

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PGS Software / HashId

PHP from Packagist Build Status Code Coverage Scrutinizer Code Quality

Symfony bundle for encoding integer route parameters and decoding request parameters with http://www.hashids.org/


Please use this version with Symfony ≥5.0


Replace predictable integer url parameters in easy way:

  • /hash-id/demo/decode/216/30 => /hash-id/demo/decode/X46dBNxd79/30
  • /order/315 => /order/4w9aA11avM

Pros:

  • no need to use extra filters - use {{ url('route_name', {'id': 1}) }} in twig template or $this->generateUrl('route_name', ['id' => 1]); in controller or service
  • Doctrine Converter compatible

Instalation

composer require quile8x/hashid-bundle-new

Hashids configuration

# config/packages/pgs_hash_id.yaml

pgs_hash_id:
    converter:
        hashids:
            salt: 'my super salt'
            min_hash_length: 20
            alphabet: 'qwertyasdzxc098765-'

Controller configuration

use Pgs\HashIdBundle\Annotation\Hash;

class UserController extends Controller
{
    /**
     * @Hash("id")
     */
    public function edit(int $id)
    {
    //...
    }

    /**
     * Process multiple parameters - 'oneMore' will not be processed
     * @Route(name="test", path="/test/{id}/{other}/{oneMore}")
     * @Hash({"id","other"})
     */
    public function test(int $id, int $other, int $oneMore)
    {
    //...
    }
}

You can also check our DemoController.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/PGSSoft/HashId.

About

The project maintained by software development agency PGS Software. See our other open-source projects or contact us to develop your product.

Follow us

Twitter URL Twitter Follow

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages