Mam skrypt:
<?php
if ($_GET['lang']){
setcookie('lang', $_GET['lang'], time()+12*2592000);
};
if (!isset($_COOKIE['lang']) && !isset($_GET['lang'])){ setcookie('lang', substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2), time()+12*2592000);}
function lang($zm){
if (isset($_COOKIE['lang']) && !isset($_GET['lang'])) {
$tong = $_COOKIE['lang'];
}
elseif($_GET['lang']){
$tong = $_GET['lang'];
}
else {
$tong = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
};
switch ($tong) {
case 'en': $tong = 0; break;
case 'ca': $tong = 1; break; //Kataloński - Catalan
case 'nl': $tong = 2; break; //Dutch - Duński
case 'sr': $tong = 3; break; //Serbian - Serbski
case 'es': $tong = 4; break; //Spanish - Hiszpański
case 'pt': $tong = 5; break; //Portuguese - Portugalski
default: $tong = 0; break;
};
$lang = Array(
'top_chang' => array('change language', 'canviar d\'idioma', 'andere taal', 'Промена језика', 'cambiar el idioma', 'mudar língua'),
'top_gamev' => array('game version', 'versió del joc', 'versie', 'Верзија игре', 'versión de juego', 'versão do jogo'),
'top_gamev_simp' => array('simple', 'simple', 'normaal', 'једноставан', 'simple', 'simples'),
'top_gamev_beta' => array('beta', 'beta', 'beta', 'бета', 'beta', 'beta'),
'mid_windo_enla' => array('enlarge', 'ampliar', 'maximaliseer', 'увећање', 'aumentar', 'ampliar'),
'mid_windo_game' => array('game', 'joc', 'spel', 'Игра', 'juego', 'jogo'),
'mid_windo_chat' => array('chat', 'xat', 'chat', 'Чет', 'chat', 'chat'),
'mid_opennewwindow' => array('open chat in new window', 'obrirà una nova finestra', 'åbne i nyt vindue', 'отварају у новом прозору', 'abrirá una nueva ventana', 'abrir em nova janela'),
'bottom_by' => array('by', 'per', 'door', 'од', 'por', 'por'),
);
return $lang[$zm][$tong];
};
?>
Skrypt działa fajnie. Gdy zmienię język zmienna zapisuje sie w cookie i przy następnym włączeniu wyświetla się wcześniej wybrany język. Ale chciałbym dodać funkcję, aby sprypt wykrywał język na podstawie języka przeglądarki jeśli na stronę użytkownik wchodzi po raz pierwszy. Jak takie coś zrobić?