Portál AbcLinuxu, 10. května 2025 05:31
Řešení dotazu:
define
nebo pole (tj. evidentně data v kódu), lze to samé mnohem lépe udělat přes gettext
echo _('Hello world.');A vypíše to "Ahoj světe." A když uděláš:
printf(ngettext('%d item', '%d items', $n), $n);Tak to podle hodnoty v
$n
vypíše "1 položka", "2 položky", nebo "5 položek". A když budeš překládat do jazyka, který má ještě více plurálních forem (např. slovinština), nebo je má jinak (každý druhý jazyk), tak to bude fungovat také.
Gettext ti navíc umí automaticky vyexportovat řetězce určené k překladu (xgettext) a k editaci PO souborů jsou celkem pěkné nástroje.
Btw, vyšel tu o tom článek.
OUTER JOIN
(případně několik u komplexního fallbacku). Naopak pokud máte texty umístěné pouze v šablonách a nepotřebujete dynamické překlady, je vhodný gettext
.
define
ani pole nejsou vhodná řešení.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.