< PHP több nyelvű program

PHP megoldás

Szerző: Sallai András

Copyright © Sallai András, 2019

Licenc: CC Attribution-Share Alike 4.0 International

Web: https://szit.hu

Bevezetés

A többnyelvű programok az előző fejezetben a gettext rendszerrel megvalósíthatók. Itt most gettext rendszer nélkül fogjuk megoldani a többnyelvű felületet.

Nyelvi fájlok létrehozása

A nyelvi fájlokat tehetjük egy langs vagy egy languages nevű könyvtárba. A nyelvi fájlok elnevezése is lehet többféle. Lehet egyszerűen hu.php, en.php, stb. De elétehetjük a lang_ szöveget is.

A nyelvi fordítások lehetnek tömbben vagy állandókban definiálva.

Állandókban:

define("_USERNAME", "Username"); define("_PASSWORD", "Password");

A példánkat mi most tömbbel dolgozzuk ki. A következő mintákban egy $lang nevű asszociatív tömböt hozunk létre.

Tömbökben:

<?php $lang = array( 'username' => "Username", 'password' => "Password" );
<?php $lang = array( 'username' => "Felhasználónév", 'password' => "Jelszó" );

A nyelvi fájlok használata

<?php $language = "hu"; require_once("languages/lang_".$language.".php"); print <<<EOT {$lang['username']} <input type="text"><br> {$lang['password']} <input type="password"><br> EOT;
<?php $lang = array ( 'username' = "Username", 'password' = "Password" );
<?php $lang = array ( 'username' => "Felhasználónév", 'password' => "Jelszó" );