How can sessions be utilized to store language arrays for multi-language websites in PHP?

When working on a multi-language website in PHP, sessions can be utilized to store language arrays. This allows for easy access to language translations throughout the website without having to repeatedly load language files. By storing language arrays in sessions, you can ensure that the selected language remains consistent across different pages and user interactions.

// Start session
session_start();

// Define language arrays
$english = array(
    "greeting" => "Hello!",
    "welcome" => "Welcome to our website."
);

$spanish = array(
    "greeting" => "¡Hola!",
    "welcome" => "Bienvenido a nuestro sitio web."
);

// Store language arrays in session
$_SESSION['languages']['en'] = $english;
$_SESSION['languages']['es'] = $spanish;

// Retrieve language array based on selected language
$selectedLanguage = 'en'; // Example: 'en' for English, 'es' for Spanish
$currentLanguage = $_SESSION['languages'][$selectedLanguage];

// Usage example
echo $currentLanguage['greeting']; // Output: Hello!
echo $currentLanguage['welcome']; // Output: Welcome to our website.