Hirdetés
- laca223: Miért győz a kollektív meggyőződés akkor is, ha saját magát teszi tönkre?
- Parci: Milyen mosógépet vegyek?
- Klaus Duran: Kellemes Ünnepeket.
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Fűzzük össze a szavakat :)
- droidic: [Memory Leak] Az agy defragmentálása
- Luck Dragon: Asszociációs játék. :)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
Új hozzászólás Aktív témák
-
modder
aktív tag
Háttő
Én most hirtelen kétfélé többnyelvűséget tudok megkülönböztetni:
1) Az oldalon megjelenő statikus szövegek: navigáció, regisztráció, miegyéb. Itt általában olyan megoldás van (azt hiszem ilyen a Zend i18n modul is), hogy megadsz egy nyelvi fájlt, aminek minden sorában van egy angol szöveg - másnyelvű szöveg pár. Visszaadhat akár tömböt is (Kohana pl. ezt csinálja)return array(
'Welcome :user' => 'Isten hozott :user'
)majd kódban a szövegeket speciális függvénnyel íratod ki, ami éppen aktuális nyelvi beállításoknak megfelelő nyelven írja ki a szöveget:
echo __('Welcome :user' , array(':user' => 'Laci'));
2) Dinamikus szövegek: blogpostok, cikkek, amiket adatbázisban tárolsz. Ez a bonyolultabb téma. Azért is, mert egy adatbázis rekord nem csak szövegeket, hanem számokat, kapcsolatokat is tárolhat, amit nem akarsz redundánsan tárolni a többnyelvűség miatt. Ezek a megközelítések jutnak eszembe:
a) van egy entitás táblád, és van több entitás_nyelv táblád. Az entitás táblába beleteszed a nyelvfüggetlen adatokat:
mikor készült a cikk, ki a szerzője, mikor módosították, milyen kategória...Az entitás_nyelv táblába pedig beleteszel egy kapcsolatot az entitás táblára, és a nyelvfüggő dolgokat ebbe teszed: maga a cikk szövege, cím
szerintem ez elég tiszta megoldásb) ugyanabban a táblában tárolod egy entitás minden fordítására vonatkozó adatot, és beteszel egy nyelv mezőt. Ez azért jó, mert nem kell a kapcsolatokkal foglalkozni, viszont a nyelvfüggetlen adatokat valszeg redundánsan tárolod, és konzisztensen kell tartani, amikor valami frissül
c) brutálisan általános és lassú megoldás, de cachelhető kódból, ezt már egyszer megcsináltam

Van egy nyelv táblám, aminek mezői [ id, nyelv, tablanev, tablamezo, tablaPK , szoveg ]
gondolom ebből látszik, hogy mire megy ki a játék. Az összes entitásom összes szöveges mezőjét az összes nyelvre egy rekordként tárolom. Működő megoldás, nagyon dinamikus, nem kell meglévő adatbázisstruktúrát megváltoztatni, és ha cachelsz szöveget pl. APC-be, akkor még elfogadható sebességű is lehet. Ha nem cachelsz, akkor viszont túl sok adatbázis lekérdezés.
Új hozzászólás Aktív témák
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Milyen okostelefont vegyek?
- A fociról könnyedén, egy baráti társaságban
- Projektor topic
- Fejhallgató erősítő és DAC topik
- Majdnem megfelezi a GeForce GPU-k gyártókapacitását az NVIDIA?
- World of Warships
- Csonkítás áldozata lett a nemzetközi Redmi Note 15 Pro+
- Futás, futópályák
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Withings ScanWatch 2 42 mm fekete újszerű, garanciális, extra szíjjal eladó!
- Vadonatúj bontatlan Samsung Galaxy okosóra 7 44 mm-es katonai zöld színben! Piaci ár alatt!
- Noblechairs HERO
- UHH! Lenovo Yoga 9i x360 Érintős Hajtogatós Laptop Tab 14" -60% i7-1280P 16/1TB Iris Xe 4K UHD OLED
- Playstation 5 Slim Digital (CFI-2116) eladó garanciával
- Samsung Galaxy Watch FE / 16GB / Bluetooth / Wi-fi / GPS / 1 Hónap garancia
- Eladó Realme 9 Pro 5G 6/128GB / 12 hó jótállás
- Telefon felvásárlás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- Készpénzes / Utalásos Számítógép felvásárlás! Személyesen vagy Postával!
- Keresek Xbox Series S / Series X / Playstation 5 konzolokat
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


