Documentación offline PHP master

uniqid

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

uniqid

Genera un identificador basado en el tiempo

Descripción#

uniqid([string $prefix], [bool $more_entropy]): string
```php

Genera un identificador basado en la hora actual con una precisión a la microsegundo, prefijado por el `prefix` dado y añadiendo eventualmente un valor generado aleatoriamente.

> [!CAUTION]
> Esta función no genera valores criptográficamente seguros, y *no debe* ser utilizada con fines criptográficos, o con fines que requieran que los valores devueltos sean indescifrables.
>
> Si se requiere aleatoriedad criptográficamente segura, el `Random\Randomizer` puede ser utilizado con el motor `Random\Engine\Secure`. Para casos de uso simples, las funciones `random_int` y `random_bytes` proporcionan una API práctica y segura que es soportada por el CSPRNG del sistema operativo.

> [!WARNING]
> Esta función no garantiza la unicidad del valor devuelto ya que este se basa en la hora actual en microsegundos o en la hora actual con una pequeña cantidad de datos aleatorios añadidos si `more_entropy` es `true`.

## Parámetros

`prefix`  
Puede ser útil, por ejemplo, para identificar fácilmente diferentes hosts, si se genera simultáneamente en varios hosts que pueden generar el mismo identificador en la misma microsegundo. (Esto puede ocurrir incluso en un solo host si el reloj del sistema se mueve hacia atrás, por ejemplo por un ajuste NTP.)

Sin `prefix` (prefijo vacío), la cadena devuelta tendrá 13 caracteres. Si `more_entropy` es `true`, tendrá 23 caracteres.

`more_entropy`  
Si el parámetro opcional `more_entropy` es `true`, `uniqid` añadirá una entropía `"combined LCG"` al final del valor devuelto, lo que aumenta la probabilidad de la unicidad del resultado.

## Valores devueltos

Devuelve un identificador basado en el timestamp, en forma de `string`.

> [!WARNING]
> Esta función no garantiza la unicidad del valor devuelto.

## Ejemplos

Ejemplo con `uniqid`

```php

Notas#

[!NOTE] En Cygwin, el parámetro more_entropy debe ser pasado a true para que esta función funcione.

Véase también#

random_bytes