Generar id`s únicos con php

Es muy común que necesitemos generar id’s únicos, y una de las técnicas mas comunes es md5(time()), pero PHP cuenta con uniqid(), de manera nativa, veamos unos ejemplos:

// genera una cadena única
echo uniqid();
/* devuelve
4bd67c947233e
*/

Puedes enviar como primer parámetro en la función un prefijo y puede poner a true el segundo valor para aumentar la entropía, (usando el generador de congruencia lineal combinado) al final del valor de retorno, lo que aumenta la probabilidad de que el resultado será único. Por defecto devuelve una cadena de 13 caracteres, si se activa la entropía devuelve una cadena de 23 caracteres.

// con prefijo
echo uniqid('id_');
/* devuelve
id_4bd67d6cd8b8f
*/

// con más entropía
echo uniqid('',true);
/* devuelve
4bd67d6cd8b926.12135106
*/

// ambos
echo uniqid('id_',true);
/* devuelve
id_4bd67da367b650.43684647
*/

La Entropía también se puede considerar como la cantidad de información promedio que contienen los símbolos usados. Los símbolos con menor probabilidad son los que aportan mayor información; por ejemplo, si se considera como sistema de símbolos a las palabras en un texto, palabras frecuentes como “que”, “el”, “a” aportan poca información. Mientras que palabras menos frecuentes como “corren”, “niño”, “perro” aportan más información. Si de un texto dado borramos un “que”, seguramente no afectará a la comprensión y se sobreentenderá, no siendo así si borramos la palabra “niño” del mismo texto original. Cuando todos los símbolos son igualmente probables (distribución de probabilidad plana), todos aportan información relevante y la entropía es máxima.



Mi nombre es Emanuel Paxtian, soy Ingeniero en sistemas computacionales, antes de conocer una computadora quería ser ingeniero civil pero eso cambio cuando use una computadora por primera vez.
Me decidí a crear este blog por que para mi sirve como una biblioteca y aparte ayudo a otros que tienen problemas al igual que yo con algunos temas.
Me gusta programar y encontrar nuevos retos día con día me considero autodidacta mi mayor maestro ha sido sin duda el internet ya que aquí puedes encontrar casi todo.