[[oktatas:programozás:php:php tobbnyelvu program|< PHP többnyelvű program]] ====== PHP Gettext ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2015 * [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: http://szit.hu ===== Bevezetés ===== A Gettext rendszer, egy program többnyelvű megvalósítására használható. A programot általában angol nyelven írjuk le, majd lefordítjuk más nyelvekre. A rendszer előnye, hogy egy adott nyelvre való fordítást nem szükséges a fejlesztőnek elvégezni. A fordítást bárki készíthet a programhoz saját nyelvén, és ehhez semmilyen fejlesztésben nem szükséges részt vennie. A fordítás a szoftverfejlesztéstől különálló tevékenység. A Gettext rendszer eredetileg Linuxon jelent meg, egy [[http://www.gnu.org/software/gettext/|GNU eszközként]]. A PHP4 verziótól használható. ===== PHP modul telepítése ===== Debian alapú linuxos rendszeren a telepítés: apt-get install php-gettext Az XAMPP alapértelmezésként tartalmazza. Ellenőrizzük egy phpinfo() függvénnyel: A megjelenő weboldalon keressünk a gettext szóra. ===== Többnyelvű PHP program ===== "; echo _('pear'), "
"; echo _('peach'), "
"; echo _('plum'), "
";
===== Fordítás ===== Fordításhoz használjuk a Poedit programot. Debian alapú Linuxon: apt-get install poedit A program indítása után, kezdjünk egy új katalógust. Állítsuk be a nyelvet: * Nyelv: hu Állítsuk be a forráskód karakterkódolását: * Forráskód karakterkódolás: UTF-8 Ez után, a Források útvonalainál adjuk meg a program könyvtárát. Például: /home/janos/projektek/projekt1/ Kattintsunk az "OK" gombra. A poedit, elkészíti a .po kiterjesztésű fájlt, csak le kell fordítani és menteni. A mentés során létrejön egy .mo kiterjesztésű fájl. Ezt másoljuk a következő helyre: /home/janos/projektek/projekt1/locale/hu/LC_MESSAGES ===== Több információ ===== * http://php.net/manual/en/function.gettext.php * http://php.net/manual/en/book.gettext.php