web-dev-qa-db-fra.com

Comment créer un identifiant unique en Perl

Je veux créer un UniqueId . Existe-t-il une fonction que je peux appeler, telle que chaque fois que je l’utilise, elle me donne un nouvel identifiant, toujours avec une valeur différente?

17
user2568702

La meilleure façon de l'utiliser aussi

use UUID::Generator::PurePerl;

sub create_search_id {
    my $this =shift;
    my $args=shift;
    my $ug = UUID::Generator::PurePerl->new();
    my $uuid1 = $ug->generate_v1();
    return $uuid1;
}

De là, vous pouvez en apprendre davantage sur Link

7
Developer

Utilisez Data :: UUID pour générer des identifiants uniques:

use Data::UUID;

$ug    = Data::UUID->new;
$uuid1 = $ug->create();   # Or create_str()
21
RichieHindle

Il est probablement intéressant de noter que sur les machines Windows, vous pouvez également utiliser Win32:

use Win32;    
my $guid = Win32::GuidGen();
4
ianbeks

Une autre alternative utilisant Data :: GUID

use Data::GUID;
my $guid = Data::GUID->new;
my $uniqueIdString = guid->as_string;

ou

use Data::GUID;
my $uniqueIdString = Data::GUID->new->as_string;
4
krispy

J'ai utilisé Data :: Uniqid , ce module a 3 méthodes:

use Data::Uniqid qw ( suniqid uniqid luniqid );
$id = suniqid; #genrates a very short id valid only for the localhost and with a liftime of 1 day
$id = uniqid;  #generates a short id valid on the local Host 
$id = luniqid; #generates a long id valid everywhere and ever
1
Suic

Essaye ça:

Push id guid en Perl

Il génère un guide dans l'ordre alphabétique de l'heure à laquelle il a été généré. Utile si vous souhaitez trier les enregistrements dans l'ordre chronologique de leur génération.

0
Rob de la Cruz