Las sesiones en PHP ayudan a pasar valores de manera segura entre paginas, las variables de sesión se pueden crear, consultar y destruir en el servidor.
Las sesiones en PHP son muy útiles para agregar una capa de seguridad a nuestros sistemas en PHP, con las variables de sesión podemos hacer sistemas de login, carritos de compras y similares.
Lo bueno de usar sesiones es que no tenemos que cargar con los valores en la URL, ademas los valores almacenados son persistentes, y podremos acceder a esos valores en cualquier pagina o archivo de nuestro proyecto.
Este artículo es parte de la Guía de Desarrollo de Sistemas con PHP y MySQL Aprende a cerar un CRUD y las herramientas necesarias para empezar a crear tus propios sistemas. Ver la Guía Completa →
Crear variables de sesion
Para utilizar variables de sesión debemos iniciar la sesión, para ello el principio del archivo en el que las utilizaremos debe contener la funcion session_start() y posteriormente podremos hacer uso de la variable especial $_SESSION que es un array asociativo, solo funciona si la función esta iniciada.
Para agregar un elemento en la variable $_SESSION simplemente hacemos:
session_start(); $_SESSION["mi_variable"] = "esta es una prueba";
Para usar o acceder a este valor simplemente:
echo $_SESSION["mi_variable"]; // mostrar variable
Verificar si la variable de sesion esta creada
Para verificar la existencia de una variable de sesion usamos la funcion isset.
<?php
session_start();
if(isset($_SESSION["mi_variable"])){
// esta definida
}else {
// no esta definida
}
?>Eliminar variable de sesion
Para eliminar una variable de session usamos la funcion unset.
<?php unset($_SESSION["mi_variable"]); ?>
Destruir sesion
Para destruir por completo la sesion usamos la funcion session_destroy()
<?php session_start(); // se inicia la session session_destroy(); // se destruye la session ?>
Es muy importante contar con mecanismos para destruir las sesiones.
Conclusion
Las variables de sesion solo funcionan para la persona actual que esta visitando la pagina, el servidor le crea id o llave unica y con esta puede acceder a sus variables de sesion, si esta llave se destruye o expira la sesion se cierra y se destruyen las variables relacionadas.