Как мы можем создать уникальный идентификатор в Perl

Я хочу создать UniqueId. Есть ли функция, которую я могу вызвать, так что каждый раз, когда я использую ее, она даст мне новый идентификатор, всегда с другим значением?

Ответы

Ответ 1

Лучший способ использовать это также

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;
}

Здесь вы можете узнать о Ссылка

Ответ 2

Используйте Data:: UUID для создания уникальных идентификаторов:

use Data::UUID;

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

Ответ 3

Другая альтернатива, использующая Data:: GUID, которая, возможно, немного менее запутанна, чем Data:: UUID

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

или

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

Ответ 4

Возможно, стоит отметить, что на машинах Windows вы также можете использовать Win32:

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

Ответ 5

Я использовал Data:: Uniqid, этот модуль имеет 3 метода:

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