Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: internacjonalizacja skryptów
Forum PHP.pl > Forum > PHP
tas
W magazynie php Solutions ukazał się nawet ciekawy artykuł o wykrywaniu narodowości internauty - http://www.phpsolmag.org/pl/mapa/show_article.php. Zastosowanie jest oczywiste - internacjonalizacja. Ale zastanawiając się nad tym głębiej, należałoby dla każdego kraju dopisać przemapować języki, w których strona jest dostępna. A nie prościej skorzystać z czegoś takiego:
[php:1:79f1a8b048]<?php
$lang = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
$lang = explode(',',$lang);
$lang = explode(';',$lang[0]);
$lang = $lang[0];
switch($lang){
case 'pl':
$href = '?lang='.$lang; //odpowiednia akcja
break;
default:
$href = '?lang=en'; //akcja alternatywna
break;
} ?>[/php:1:79f1a8b048]
Może i jestem w błędzie, staram się szukać jednak rozwiązań najprostrzych. Kwestia samego tłumaczenia stringów to już oczywiście zupełnie inna sprawa. Ale ma jest sens wykorzystywania tego w praktyce? Zastanawiam się, jak wy to rozwiązujecie.
Z góry dziękuję za sugestywne i kreatywne odpowiedzi smile.gif
scanner
Rozwiązujemy to tak, że do szablonów podsywaly odpowiednie strongi wybrane z tabeli jezykowej.[php:1:0ad17e5463]<?php
$arrLang['pl']['L_yes'] = 'Tak';
$arrLang['pl']['L_no'] = 'Nie';
$arrLang['ru']['L_yes'] = 'Da';
$arrLang['ru']['L_no'] = 'Niet';

$Smarty->assign( $arrLang['pl'] );
// lub
$Smarty->assign( $arrLang['ru'] );
?>[/php:1:0ad17e5463]Domyślnie strona ma np. język polski, a user w preferencjach swojego profilu moze zmienic na inny dostepny.
Albo zmienic przy pomocy linka - wybrany jezyk zapisany jest w sesji..
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.