Guid / UUID en PHP avec MySQL

voix
4

Je voudrais stocker UUID dans la base de données BINARY (16), mais je dois les accepter et de les présenter comme format XXXXXXXXXXXX-XXXXXXXX-XXXXXXXXXXXX. Avant que je saute de diviser le guid en code PHP (ce qui est amusant!), Sont-il des bibliothèques ou des fonctions qui font hors-the-box?

Créé 27/08/2009 à 04:27
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
5

Vous pouvez d' abord supprimer les tirets avec Remplacer () , puis utilisez UNHEX ()

Effectue l'opération inverse de HEX (str). Autrement dit, il interprète chaque paire de chiffres hexadécimaux dans l'argument en nombre et il convertit au caractère représenté par le nombre.

Créé 27/08/2009 à 09:28
source utilisateur

voix
0

Ne vous dire BINARY (36) au lieu de BINARY (16)

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

CakePHP a une fonctionnalité soignée pour les UUID et il fonctionne automatiquement CHAR (36) et BINARY (36) de ce que je comprends. De toute façon vous pouvez creuser dans la source un peu pour voir si elle a ce que vous avez besoin.

Edit: Voici une classe autonome qui peut générer et convertir en une multitude de formats que vous pourriez avoir besoin: http://www.shapeshifter.se/2008/09/29/uuid-generator-for-php/ Je posté dans le commentaire ci - dessous mais je voulais vous assurer que le lien est facilement visible pour les autres utilisateurs.

Créé 27/08/2009 à 05:49
source utilisateur

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