Guid / UUID em PHP com MySQL

votos
4

Eu gostaria de armazenar UUIDs no banco de dados como binário (16), mas eu preciso aceitá-los e apresentá-los como o formato XXXXXXXXXXXX-XXXXXXXX-XXXXXXXXXXXX. Antes de eu ir para dividir o GUID no código PHP (o que é uma diversão que é!), Existem bibliotecas ou funções que fazem isso out-of-the-box?

Publicado 27/08/2009 em 04:27
fonte usuário
Em outras línguas...                            


2 respostas

votos
5

Você pode remover primeiro os traços com Replace () e, em seguida, usar Unhex ()

Executa a operação inversa do HEX (str). Ou seja, ele interpreta cada par de dígitos hexadecimais no argumento como um número e converte-lo para o personagem representado pelo número.

Respondeu 27/08/2009 em 09:28
fonte usuário

votos
0

Não quer dizer BINARY (36) em vez de BINÁRIO (16)

tente http://pecl.php.net/package/uuid

CakePHP tem algumas funcionalidades puro para UUIDs e funciona automaticamente para CHAR (36) e BINARY (36) do que eu entendo. De qualquer maneira você poderia cavar a fonte um pouco para ver se ele tem o que você precisa.

Edit: Aqui está um stand alone classe que pode gerar e converter em praticamente qualquer formato que você pode precisar de: http://www.shapeshifter.se/2008/09/29/uuid-generator-for-php/ eu postei isso em o comentário abaixo, mas queria ter certeza que o link é facilmente visível para outros usuários.

Respondeu 27/08/2009 em 05:49
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more