Un pont Hashids pour Laravel.
// Encode integers.
Hashids:: encode ( 4815162342 );
// Decode strings.
Hashids:: decode ( ' 1LLb3b4ck ' );
// Dependency injection example.
$ hashidsManager -> encode ( 911 );
Exigez ce package, avec Composer, dans le répertoire racine de votre projet.
composer require vinkla/hashids
Laravel Hashids nécessite une configuration de connexion. Pour commencer, vous devrez publier tous les éléments du fournisseur :
php artisan vendor:publish
Cela créera un fichier config/hashids.php
dans votre application que vous pourrez modifier pour définir votre configuration. Assurez-vous également de vérifier les modifications apportées au fichier de configuration d'origine dans ce package entre les versions.
Cette option default
vous permet de spécifier laquelle des connexions ci-dessous vous souhaitez utiliser comme connexion par défaut pour tous les travaux. Bien entendu, vous pouvez utiliser plusieurs connexions à la fois en utilisant la classe manager. La valeur par défaut de ce paramètre est main
.
Cette option connections
est l'endroit où chacune des connexions est configurée pour votre application. Un exemple de configuration a été inclus, mais vous pouvez ajouter autant de connexions que vous le souhaitez.
Ici vous pouvez voir un exemple de votre utilisation de ce package. Prêt à l'emploi, l'adaptateur par défaut est main
. Après avoir entré vos informations d'authentification dans le fichier de configuration, cela fonctionnera :
// You can alias this in config/app.php.
use Vinkla Hashids Facades Hashids ;
// We're done here - how easy was that, it just works!
Hashids:: encode ( 4815162342 );
// This example is simple and there are far more methods available.
Hashids:: decode ( ' doyouthinkthatsairyourebreathingnow ' );
Le gestionnaire se comportera comme s'il s'agissait d'une classe HashidsHashids
. Si vous souhaitez appeler des connexions spécifiques, vous pouvez le faire avec la méthode de connexion :
use Vinkla Hashids Facades Hashids ;
// Writing this...
Hashids:: connection ( ' main ' )-> encode ( $ id );
// ...is identical to writing this
Hashids:: encode ( $ id );
// and is also identical to writing this.
Hashids:: connection ()-> encode ( $ id );
// This is because the main connection is configured to be the default.
Hashids:: getDefaultConnection (); // This will return main.
// We can change the default connection.
Hashids:: setDefaultConnection ( ' alternative ' ); // The default is now alternative.
Si vous préférez utiliser l'injection de dépendances sur les façades, alors vous pouvez injecter le gestionnaire :
use Vinkla Hashids HashidsManager ;
class Foo
{
protected $ hashids ;
public function __construct ( HashidsManager $ hashids )
{
$ this -> hashids = $ hashids ;
}
public function bar ( $ id )
{
$ this -> hashids -> encode ( $ id );
}
}
App:: make ( ' Foo ' )-> bar ();
Pour plus d'informations sur l'utilisation de la classe HashidsHashids
, consultez la documentation sur hashids/hashids
.