PHP - función session_regenerate_id ()

Definición y uso

Las sesiones o el manejo de sesiones es una forma de hacer que los datos estén disponibles en varias páginas de una aplicación web. lossession_regenerate_id() La función genera una nueva identificación de sesión y actualiza la actual con la recién creada.

Sintaxis

session_regenerate_id([$delete_old_session]);

Parámetros

No Señor Descripción de parámetros
1

delete_old_session (Optional)

Este es un valor booleano que se utiliza para especificar si eliminar el archivo de sesión asociado anterior o no. Si pasa VERDADERO como valor, no lo hará.

Valores devueltos

Esto devuelve un valor booleano que es VERDADERO en caso de éxito, de lo contrario FALSO.

Versión PHP

Esta función se introdujo por primera vez en PHP versión 4 y funciona en todas las versiones posteriores.

Ejemplo 1

El siguiente ejemplo demuestra el uso de session_regenerate_id() función.

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Creating a custom session id
         session_id("my-id");
         //Starting the session
         session_start();   
         print("Id: ".session_id());

         session_regenerate_id();
         echo "<br>";
         print("New Session Id: ".session_id());		 
      ?>
   </body>   
</html>

Al ejecutar el archivo html anterior, se mostrará el siguiente mensaje:

Id: my-id
New Session Id: sm6tplqv1e2dhchnv75d7i3bic

Ejemplo 2

A continuación se muestra otro ejemplo de esta función.

session_page1.htm

<html>
   <body>
      <?php
         //Starting the session	
         $id = session_create_id();	
         session_id($id);
         print("\n"."Id: ".$id);
         session_start();  
        
         session_regenerate_id();
         echo "<br>";
         print("New Session Id: ".session_id());	 
      ?>
   </body>
</html>

Esto producirá el siguiente resultado:

Id: r30p6i4cnu0qs683lsu8bchv5u
New Session Id: jj24l3eumtps2nudqa0gm843qr

Ejemplo 3

Puede eliminar el archivo de sesión anterior como se muestra a continuación:

<html>   
   <head>
      <title>Setting up a PHP session</title>
   </head>   
   <body>
      <?php  
         //Creating a custom session id
         session_id("my-id");
         //Starting the session
         session_start();   
         print("Id: ".session_id());

         session_regenerate_id(TRUE);
         echo "<br>";
         print("New Session Id: ".session_id());		 
      ?>
   </body>   
</html>

Al ejecutar el archivo html anterior, se mostrará el siguiente mensaje:

Id: my-id
New Session Id: k5dli3nl4lf6vogu156r4qb0l1