What are the best practices for handling session variables in PHP to ensure data security and integrity?

Session variables in PHP are commonly used to store user-specific data throughout a user's session. To ensure data security and integrity, it is important to properly handle session variables by using secure methods such as validating and sanitizing user input, encrypting sensitive data, and setting proper session configurations.

// Start the session
session_start();

// Validate and sanitize user input before storing in session variables
$_SESSION['username'] = filter_var($_POST['username'], FILTER_SANITIZE_STRING);

// Encrypt sensitive data before storing in session variables
$_SESSION['password'] = password_hash($_POST['password'], PASSWORD_DEFAULT);

// Set proper session configurations for security
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);