Un puente Hashids para Laravel.
// Encode integers.
Hashids:: encode ( 4815162342 );
// Decode strings.
Hashids:: decode ( ' 1LLb3b4ck ' );
// Dependency injection example.
$ hashidsManager -> encode ( 911 );
Solicite este paquete, con Composer, en el directorio raíz de su proyecto.
composer require vinkla/hashids
Laravel Hashids requiere configuración de conexión. Para comenzar, deberá publicar todos los activos del proveedor:
php artisan vendor:publish
Esto creará un archivo config/hashids.php
en su aplicación que puede modificar para establecer su configuración. Además, asegúrese de verificar si hay cambios en el archivo de configuración original en este paquete entre versiones.
Esta opción default
es donde puede especificar cuál de las siguientes conexiones desea utilizar como conexión predeterminada para todo el trabajo. Por supuesto, puedes usar muchas conexiones a la vez usando la clase de administrador. El valor predeterminado para esta configuración es main
.
Esta opción de connections
es donde se configura cada una de las conexiones para su aplicación. Se ha incluido una configuración de ejemplo, pero puede agregar tantas conexiones como desee.
Aquí puede ver un ejemplo de cómo puede utilizar este paquete. Fuera de la caja, el adaptador predeterminado es main
. Después de ingresar sus detalles de autenticación en el archivo de configuración, simplemente funcionará:
// 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 ' );
El administrador se comportará como si fuera una clase HashidsHashids
. Si desea llamar a conexiones específicas, puede hacerlo con el método de conexión:
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 prefiere utilizar la inyección de dependencias en lugar de fachadas, puede inyectar el administrador:
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 ();
Para obtener más información sobre cómo utilizar la clase HashidsHashids
, consulte los documentos en hashids/hashids
.