Перенаправление на языковую версию сайта, в зависимости от локали браузера
Довольно простенькое решение, по перебрасыванию пользователя на нужную языковую версию в зависимости от локали браузера.
<?php
// Создаем массив с адресами для каждого языкового кода
$sites = array(
"ru" => "http://ru.somesite.com/",
"en" => "http://somesite.com/",
);
// получаем язык
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); // вырезаем первые две буквы
// проверяем язык, если не определен переправляем на версию по умолчанию (в данном случае английскую)
if (!in_array($lang, array_keys($sites))){
$lang = 'en';
}
// если нет данных в сессию, записываем и перенаправление на нужную версию, если данные есть не делаем ничего
session_start();
if(!isset ($_SESSION["lang"])){
$_SESSION["lang"] = $lang;
header('Location: ' . $sites[$lang]);
}