What are some best practices for handling language preferences with PHP cookies?

When handling language preferences with PHP cookies, it is important to set the cookie with the chosen language preference when the user selects a language on the website. This cookie should be checked on subsequent visits to the site to ensure the user's preferred language is used. Additionally, it is good practice to provide a fallback language in case the preferred language is not available.

// Set language cookie when user selects a language
if(isset($_GET['lang'])) {
    $language = $_GET['lang'];
    setcookie('preferred_language', $language, time() + (86400 * 30), '/');
}

// Check for language cookie on subsequent visits
if(isset($_COOKIE['preferred_language'])) {
    $preferred_language = $_COOKIE['preferred_language'];
} else {
    $preferred_language = 'en'; // Fallback language
}

// Use the preferred language for displaying content
echo "Preferred language: " . $preferred_language;