Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wielojęzycznośc serwisu
Forum PHP.pl > Forum > PHP
aren
Sądzę, że pytanie to raczej do osób, które już nieco dłużej siedzą w php. Mianowicie jak najwydajniej 'zinternacjonalizowac' serwis: np. uzytkownik moze w ustawieniach wybierac pomiedzy jezykami.

Moje przemyslenie:
# za string, ktory chcemy tlumaczyc, podstawiamy zmienna np. $LANG['user']
# by nie inkludowac wielkich plikow jezykowych robimy 'strona1.lang' (np. dla PL '/lang/pl/strona1.lang') dla 'strona1.php' itd.
# natomiast, jak sie mozna domyslic, plik lang wyglada nastepujaco:
  1. <?php
  2. $LANG['user']="uzytkownik";
  3. itd...
  4. ?>


Watpie jednak, by bylo to dobre rozwiazanie. Dlatego stad moje pytanie, jak to jest robione w wiekszych, zaawansowanych projektach?

Z góry dziękuję za pomoc.
Whisller
i18n, gettext
kossa
1. masz pliki np z tekstami wyświetlanymi na stronie

np. w pliku pl.php
  1. <?php
  2. define("TXT_KOT", "kot");
  3. ?>

np. w pliku en.php
  1. <?php
  2. define("TXT_KOT", "cat");
  3. ?>


a potem na stronie w zależności od wersji jezykowej includujesz odpowiedni plik albo pl.php albo en.php

i

  1. <?php
  2. echo TXT_KOT;
  3. ?>


jaki język to trzymasz w sesji lub cookies jeśli dane mają być przechowywane dłuzej lub w bazie dla zalogowanych

Łukasz
aren
Rozwiązanie podane przez Whisller jest niewątpliwie bardziej odpowiednie oraz z tego co czytam powszechnie używane. Dlatego jeśli można prosic o jakies przyklady/tutoriale byłbym wdzięczny, gdyż chciałbym się za to zabrac.

@kossa
Dzięki za chęc pomocy, ale Twoje rozwiązanie nie różni się za wiele od mojego.
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.