session_regenerate_id
En esta página
session_regenerate_id
Reemplaza el identificador de sesión actual por uno nuevo
Descripción#
session_regenerate_id([bool $delete_old_session]): bool
```php
`session_regenerate_id` reemplazará el identificador de sesión actual por uno nuevo, generado automáticamente, manteniendo los valores de sesión.
Cuando la opción [session.use_trans_sid](#ini.session.use-trans-sid) está activa, la salida para visualización debe comenzar después de la llamada a la función `session_regenerate_id`. De lo contrario, se utilizará el antiguo ID de sesión.
> [!WARNING]
> Actualmente, session_regenerate_id no maneja adecuadamente una red inestable. Por ejemplo, redes móviles y WiFi. Por lo tanto, puede encontrarse una pérdida de sesión al llamar a session_regenerate_id.
>
> No se deben destruir los antiguos datos de sesión inmediatamente, sino que se debe utilizar el timestamp de destrucción y controlar el acceso al antiguo ID de sesión. De lo contrario, el acceso simultáneo a la página puede provocar un estado inconsistente, o quizás se haya perdido la sesión, o puede provocar un acceso concurrente lado-cliente (navegador) y puede crear muchos ID de sesión innecesariamente. La eliminación inmediata de datos de sesión también desactiva la detección y prevención de ataques de secuestro de sesión.
## Parámetros
`delete_old_session`
Si se debe borrar el antiguo archivo de sesión asociado o no. No se debe eliminar la antigua sesión si se necesita evitar accesos concurrentes causados por la eliminación o detectar/evitar ataques de secuestro de sesión.
## Valores devueltos
Esta función retorna `true` en caso de éxito o `false` si ocurre un error.
## Ejemplos
Ejemplo con `session_regenerate_id`
"; print_r($_SESSION); ?>
El módulo de sesión actual no maneja adecuadamente una red inestable. Se debe gestionar el ID de sesión para evitar la pérdida de sesión por session_regenerate_id.
Evitar la pérdida de sesión por `session_regenerate_id`
```php
Véase también#
session_id, session_create_id, session_start, session_destroy, session_reset, session_name