. Copyright (c) 2005,2006 Steven Armstrong This file is part of PHP-gettext. PHP-gettext is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. PHP-gettext is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with PHP-gettext; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ error_reporting(E_ALL | E_STRICT); // define constants define('PROJECT_DIR', realpath('./')); define('LOCALE_DIR', PROJECT_DIR .'/locale'); define('DEFAULT_LOCALE', 'en_US'); require_once('../gettext.inc'); $supported_locales = array('en_US', 'sr_CS', 'de_CH'); $encoding = 'UTF-8'; $locale = (isset($_GET['lang']))? $_GET['lang'] : DEFAULT_LOCALE; // gettext setup T_setlocale(LC_MESSAGES, $locale); // Set the text domain as 'messages' $domain = 'messages'; T_bindtextdomain($domain, LOCALE_DIR); T_bind_textdomain_codeset($domain, $encoding); T_textdomain($domain); header("Content-type: text/html; charset=$encoding"); ?> PHP-gettext fallback example

PHP-gettext as a fallback solution

Example showing how to use PHP-gettext as a fallback solution if the native gettext library is not available or the system does not support the requested locale.

"; foreach($supported_locales as $l) { print "[$l] "; } print "

\n"; if (!locale_emulation()) { print "

locale '$locale' is supported by your system, using native gettext implementation.

\n"; } else { print "

locale '$locale' is not supported on your system, using custom gettext implementation.

\n"; } ?>
"; print T_("This is how the story goes.\n\n"); for ($number=6; $number>=0; $number--) { print sprintf( T_ngettext("%d pig went to the market\n", "%d pigs went to the market\n", $number), $number ); } print "\n"; ?>

« back