Řešení:
cs.json (soubor s překlady)
- Kód: Vybrat vše
{
"Home": {
"Accounts": "Seznam účtů"
}
}
class.translator.php (překladač)
- Kód: Vybrat vše
class translator
{
public $sec;
public $exp;
public function __construct($sec)
{
$this->data = json_decode(file_get_contents(dirname(__FILE__).'/../../lang/'.$sec.'.json'),true);
}
public function translate($sec,$exp)
{
return ($this->data[$sec][$exp]);
}
}
php volání:
- Kód: Vybrat vše
$lang = new translator($userdats['lang']); // Načtení jazyka
$lang->translate('Account','NotLab'); // Překlad potřebné části
Jde mi hlavně o náročnost načítání, protože to nechci tahat z DB (abych ji nezatěžoval jednotlivými dotazy) a záznamů k přeložení může být i 1000, tedy se musí načítat při každé stránce, kde je překlad soubor s tisíci záznamy. Samozřejmě soubor zmenším číselnými indexy místo používáním slovních indexů k překladu, ale i přesto mi to přijde celkem náročné.
Předem děkuji za názory
