function test_strftime_1() { $tz = fbSystem::putEnv('TZ', 'GMT'); $date = mktime(1, 3, 4, 5, 6, 2007); foreach ($this->formats as $fmt => $expected) { $rv = fbDateTime::strftime($fmt, $date); if ($rv != $expected) { foreach ($this->alt_formats as $alt_format) { if (isset($alt_format[$fmt]) && $alt_format[$fmt] == $rv) { $expected = $rv; break; } } } $this->assertEquals($expected, $rv, "fmt='{$fmt}'"); } fbSystem::putEnv('TZ', $tz); }
function test_putenv_1() { $rv = fbSystem::putEnv('PHPRC', 'C:\\PHP'); $this->assertTrue($rv, "rv='{$rv}'"); $rv = fbSystem::putEnv('PHP_TZ', 'PST8PDT'); $this->assertTrue($rv, "rv='{$rv}'"); }
function setLocale($category, $locales) { fbDebug::enter(); assert('$category == LC_ALL || $category == LC_COLLATE ||' . '$category == LC_CTYPE || $category == LC_MONETARY ||' . '$category == LC_NUMERIC || $category == LC_TIME'); static $locale_map = array(); /* // \todo get serialize working $locale_key = is_array($locales) ? serialize($locales) : $locales; fbDebug::dump($locale_key, '$locale_key'); if (!isset($locale_map[$locale_key])) { $locale_map[$locale_key] = fbLocale::getNearestLocale($locales); fbDebug::dump($locale_map, '$locale_map'); } $locale = $locale_map[$locale_key]; if (!$locale) { return setlocale($category, $locales); } */ $locale = $locales; // this appears to be required in order for the gettext functions to work fbSystem::putEnv('LANG', $locale); // it's been reported that this is needed to on some systems fbSystem::putEnv('LANGUAGE', $locale); if (!preg_match('/^win/i', PHP_OS)) { $rv = fbLocale::_setLocale($category, $locale); } else { $rv = fbLocale::_setLocaleWindows($category, $locale); } $_locale_cache =& fbLocale::_locale_cache(); if ($rv && !isset($_locale_cache[$category][$rv])) { $a = fbLocale::_parseLocale($rv); $iso_locale = $a['locale']; $_locale_cache[$category][$rv] = $a; $_locale_cache[$category][$iso_locale] = $a; } fbDebug::leave($rv); return $rv; }