Post Top Ad

Your Ad Spot

domingo, 19 de abril de 2020

Sesiones Laravel

La sesión de Laravel es una forma de almacenar la información del usuario en las múltiples solicitudes de los usuarios. Realiza un seguimiento de todos los usuarios que visitan la aplicación.
Comprendamos la sesión a través de un ejemplo.
  • Primero, creamos un formulario en el que aplicamos las propiedades de la sesión.
form.blade.php
  1. HTML >  
  2. Cabeza >  
  3. título  Carga de archivos  </ título >  
  4. </ Head >  
  5. Cuerpo >  
  6. form method "Post" action "{{route ('forms.store')}}" >    
  7. @csrf  
  8. div label for "Name" Nombre </ label >   
  9. Entrada de tipo "texto" nombre "nombre de usuario" </ div br />     
  10. div button type "submit" Enviar  </ button </ div >   
  11. </ form >  
  12. </ cuerpo >  
  • Ahora, definimos la función store () en el archivo FormController.php .
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2. {  
  3.   print_r ($ request-> input ( 'nombre de usuario' ));  
  4.  }  
  • Al final, definimos la ruta en web.php .
  1. Ruta :: get ( '/ session' , function ()  
  2. {  
  3.    vista de retorno 'formulario' );  
  4. });  
Salida
Sesiones Laravel
Cuando hacemos clic en el botón Enviar , aparece la pantalla que se muestra a continuación:
Sesiones Laravel

Almacenar los datos en una sesión

Para almacenar el nombre de usuario en una sesión, utilizamos el método de sesión put () como se muestra a continuación:
$ request-> session () -> put ('usuario', $ request-> input ('nombre de usuario'));
Para recuperar la sesión, utilizamos el método de sesión get () como se muestra a continuación:
echo $ request-> session () -> get ('usuario');
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2. {  
  3. $ request-> session () -> put ( 'usuario' , $ request-> input ( 'nombre de usuario' ));  
  4. echo $ request-> session () -> get ( 'usuario' );   
  5.  }  
Salida
Sesiones Laravel
Sesiones Laravel

Ayudante de sesión global

También podemos usar la función de sesión global que almacena y recupera el valor en una sesión. Cuando la función de sesión se pasa con un solo parámetro, devuelve el valor de la clave. Si la sesión se pasa con una matriz de pares clave / valor, los valores se almacenan en la sesión.
// Recuperar datos de la clave de sesión.
$ datos = sesión ('clave');
// Proporcionar un valor predeterminado a la clave de sesión.
$ data = session ('clave', 'predeterminado');
// Almacenar el valor en la clave de sesión.
sesión (['clave' => 'valor']);
Comprendamos a través de un ejemplo.
FormController.php
  1.  tienda de funciones públicas (Solicitud $ solicitud) {  
  2. session ([ 'user' => $ request-> input ( 'username' )]);  
  3. $ datos = sesión ( 'usuario' );  
  4. echo $ datos;  
  5.     }  
Salida
Sesiones Laravel
Sesiones Laravel

Recuperando todos los datos de la sesión

Si queremos recuperar todos los datos de la sesión, entonces podemos usar el método all () como se muestra a continuación:
$ session_data = $ request-> session () -> all ();
Comprendamos a través de un ejemplo:
FormController.php
  1.  tienda de funciones públicas (Solicitud $ solicitud) {  
  2. session ([ 'user1' => 'anushka' ]);  
  3. session ([ 'user2' => 'anvi' ]);  
  4. return  $ request-> session () -> all ();  
  5.   }  
Ahora, definimos la ruta en el archivo web.php .
Ruta :: get ('/ show', 'FormController @ store');
Salida
Sesiones Laravel

Eliminar la sesión

Ahora, veremos cómo eliminar los datos de la sesión. Podemos eliminar la sesión usando el método forget ().
Comprendamos a través de un ejemplo.
FormController.php
  1. También podemos eliminar la sesión usando el método delete ().  
  2. {  
  3. session ([ 'user1' => 'anushka' ]);  
  4. session ([ 'user2' => 'anvi' ]);  
  5. $ request-> session () -> forget ( 'usuario1' );  
  6. return  $ request-> session () -> all ();  
  7.     }  
Salida
Sesiones Laravel
En la captura de pantalla anterior, podemos ver que el usuario1 no se muestra, por lo que significa que el usuario1 ha sido eliminado de la sesión.
Para eliminar todos los datos de la sesión, usaremos el método flush ().
$ request-> session () -> flush ();
Vamos a entender el método flush () a través de un ejemplo.
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2. {  
  3. session ([ 'user1' => 'anushka' ]);  
  4. session ([ 'user2' => 'anvi' ]);  
  5. $ request-> session () -> flush ();  
  6. return  $ request-> session () -> all ();  
  7.  }  
Salida
Sesiones Laravel
En la captura de pantalla anterior, observamos que todos los datos se han eliminado de la sesión y devuelve una matriz vacía.

Datos intermitentes

Los datos flash son útiles cuando queremos almacenar los datos en la sesión para la solicitud actual, ya que los datos flasheados se eliminan en la siguiente solicitud.
Comprendamos los datos intermitentes a través de un ejemplo.
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2. {  
  3.  session () -> flash ( 'post' ,  'la publicación ha sido actualizada' );  
  4. return  $ request-> session () -> get ( 'post' );  
  5.  }  
Salida
Sesiones Laravel
Cuando eliminamos la función flash () del código, el código se vería así:
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2.  {  
  3.     return  $ request-> session () -> get ( 'post' );  
  4. }  
Cuando actualizamos la página dos veces, luego en la segunda actualización, los datos de la sesión se eliminarán.
Sesiones Laravel

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas