Пример #1
0
echo 'gettext("24 hours")=',gettext("24 hours"),"\n";
echo 'gettext(\'24 hours\')=',gettext('24 hours'),"\n";
// _() as in alias for gettext()
echo '_("24 hours")=',_("24 hours"),"\n";
echo '_(\'24 hours\')=',_('24 hours'),"\n";
//echo 'fbLocale::parseAcceptLanguages=';
//print_r(fbLocale::parseAcceptLanguages());
*/
// echo 'fbLocale::parseAcceptLanguages=';
// print_r(fbLocale::parseAcceptLanguages());
// echo "\n";
echo 'fbLocale::getNearestLocales(fbLocale::parseAcceptLanguages())=';
print_r(fbLocale::getNearestLocales(fbLocale::parseAcceptLanguages()));
print "\n";
echo 'fbLocale::getAvailableLocales=';
print_r(fbLocale::getAvailableLocales());
echo '$long_month_names_hash =';
print_r($long_month_names_hash);
echo '$long_weekday_names_hash =';
print_r($long_weekday_names_hash);
/*
$locales = fbLocaleWindows::mimeToWindowsLocaleMap();
foreach ($locales as $iso_locale => $country_name) {
	$nearest_locale = fbLocale::getNearestLocale($iso_locale);
	$nearest_country_name = '';
	printf("%-10s %-30s %-10s %-30s\n", $iso_locale, $country_name,
$nearest_locale, $nearest_country_name);
}
*/
/*
setlocale(LC_ALL, 'usa');
Пример #2
0
 function getNearestLocales($locales)
 {
     fbDebug::enter();
     static $locale_map;
     static $available_locales;
     if (!$available_locales) {
         $available_locales =& fbLocale::getAvailableLocales();
     }
     // \todo get serialize working
     $locale_key = is_array($locales) ? serialize($locales) : $locales;
     fbDebug::dump($locale_key, '$locale_key');
     if (!isset($locale_map[$locale_key])) {
         if (is_array($locales)) {
             foreach ($locales as $locale) {
                 $locale_map[$locale_key] = fbLocale::getNearestLocales($locale);
                 if ($locale_map[$locale_key]) {
                     fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
                     return $locale_map[$locale_key];
                 }
             }
             fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
             return $locale_map[$locale_key];
         }
         if (isset($available_locales[$locale_key])) {
             $locale_map[$locale_key] = $locale_key;
             fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
             return $locale_map[$locale_key];
         } else {
             $language = substr($locale_key, 0, 2);
             fbDebug::dump($language, '$language');
             foreach ($available_locales as $locale => $available_language) {
                 fbDebug::dump($locale, '$locale');
                 fbDebug::dump($available_language, '$available_language');
                 if (strcasecmp($language, $available_language) == 0) {
                     $locale_map[$locale_key] = $locale;
                     fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
                     return $locale_map[$locale_key];
                 }
             }
             $locale_map[$locale_key] = false;
             fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
         }
     }
     fbDebug::dump($locale_map[$locale_key], '$locale_map[$locale_key]');
     fbDebug::leave($locale_map[$locale_key]);
     return $locale_map[$locale_key];
 }