1
resposta

[Dúvida] Posso utilizar UUID como identificador em uma entidade?

Posso utilizar UUID como identificador em uma entidade que não possui atributos adequados para serem usados como identificador único?

1 resposta

Olá, Antonio.

Tudo bem?

Sim, você pode utilizar UUID como identificador em uma entidade, especialmente quando não há atributos adequados para serem usados como identificador único. O UUID é uma excelente escolha para garantir a unicidade dos identificadores, independentemente do contexto ou do ambiente em que a aplicação está sendo executada.

Aqui está um exemplo básico de como você pode gerar e usar UUIDs em PHP:

// Primeiro, você precisa instalar a biblioteca ramsey/uuid via Composer
// Execute o comando: composer require ramsey/uuid

require 'vendor/autoload.php';

use Ramsey\Uuid\Uuid;

class MinhaEntidade {
    private $id;
    private $nome;

    public function __construct($nome) {
        $this->id = Uuid::uuid4()->toString(); // Gera um UUID v4
        $this->nome = $nome;
    }

    public function getId() {
        return $this->id;
    }

    public function getNome() {
        return $this->nome;
    }
}

// Exemplo de uso
$entidade = new MinhaEntidade('Exemplo');
echo 'ID: ' . $entidade->getId() . PHP_EOL;
echo 'Nome: ' . $entidade->getNome() . PHP_EOL;

No exemplo acima, utilizamos a biblioteca ramsey/uuid para gerar um UUID v4, que é um identificador aleatório. Esse identificador é então atribuído ao atributo $id da entidade MinhaEntidade no momento da sua criação.

Espero ter ajudado e bons estudos!