|
eZ Publish
[trunk]
|
Provides unified access to locale information and conversions. More...
Provides unified access to locale information and conversions.
The eZLocale class handles locale information and can format time, date, numbers and currency for correct display for a given locale. The locale conversion uses plain numerical values for dates, times, numbers and currency, if you want more elaborate conversions consider using the eZDate, eZTime, eZDateTime and eZCurrency classes.
The first time a locale object is created (ie. eZLocale::instance() ) you must be sure to set a language using setLanguage before using any textual conversions.
Example:
// Fetch the default values supplied by site.ini $locale = eZLocale::instance(); // Make sure PHP is to the correct locale $locale->initPHP(); print( $locale->formatTime() . '<br>' ); // Display current time print( $locale->formatDate() . '<br>' ); // Display current day foreach ( $locale->weekDays() as $day ) // Print a week with 3 letter daynames { print( $locale->shortDayName( $day ) . '<br>' ); }
Countries are specified by the ISO 3166 Country Code http://www.iso.ch/iso/en/prods-services/iso3166ma/index.html User-assigned code elements http://www.iso.ch/iso/en/prods-services/iso3166ma/04background-on-iso-3166/reserved-and-user-assigned-codes.html#userassigned
Language is specified by the ISO 639 Language Code http://www.w3.org/WAI/ER/IG/ert/iso639.htm
Currency/funds are specified by the ISO 4217 http://www.bsi-global.com/Technical+Information/Publications/_Publications/tig90.xalter
Discussion on Norwegian locales https://lister.ping.uio.no/pipermail/lister.ping.uio.no/i18n-nn/2002-April.txt http://www.sprakrad.no/oss.htm
The date and time formats are quite similar to the builtin PHP date function, the main differences are those which returns textual representations of months and days. More info on the date function here: http://www.php.net/manual/en/function.date.php
The following characters are not recognized in the format string:
The following characters are recognized in the format string:
Definition at line 110 of file ezlocale.php.
Definition at line 606 of file ezlocale.php.
| eZLocale::attribute | ( | $ | attribute | ) |
Definition at line 536 of file ezlocale.php.
Definition at line 557 of file ezlocale.php.
Referenced by attribute(), attributes(), and hasAttribute().
Definition at line 522 of file ezlocale.php.
Returns the charset for this locale.
Definition at line 598 of file ezlocale.php.
Returns the code for the country. eg. 'NO'
Definition at line 630 of file ezlocale.php.
Referenced by countryFile(), and localeFile().
Returns the comment for the country, if any.
Definition at line 622 of file ezlocale.php.
| eZLocale::countryFile | ( | $ | withVariation = false | ) |
Returns the eZINI object for the country ini file.
Definition at line 1485 of file ezlocale.php.
Referenced by eZLocale().
| static eZLocale::countryList | ( | $ | withVariations = true | ) | [static] |
| $withVariations | If true it will include variations of locales (ends with ) |
Definition at line 1399 of file ezlocale.php.
Returns the name of the country in British English.
Definition at line 614 of file ezlocale.php.
Returns the variation for the country. eg. 'spraakraad'
Definition at line 638 of file ezlocale.php.
Referenced by countryFile(), eZLocale(), languageFile(), localeFile(), and localeFullCode().
| static eZLocale::create | ( | $ | localeString = false | ) | [static] |
Similar to instance() but will always create a new copy.
Definition at line 1580 of file ezlocale.php.
Referenced by eZStepInstaller\checkDatabaseRequirements(), eZStepCreateSites\init(), and eZStepLanguageOptions\processPostData().
Definition at line 835 of file ezlocale.php.
Definition at line 819 of file ezlocale.php.
Returns the name of the currency.
Definition at line 754 of file ezlocale.php.
Definition at line 843 of file ezlocale.php.
Definition at line 851 of file ezlocale.php.
Returns the short name of the currency.
Definition at line 762 of file ezlocale.php.
Returns the currency symbol for this locale.
Definition at line 746 of file ezlocale.php.
Definition at line 827 of file ezlocale.php.
| static eZLocale::currentLocaleCode | ( | ) | [static] |
Returns the current locale code for this language which is the language and the country with a dash (-) between them, for instance nor-NO or eng-GB.
Definition at line 721 of file ezlocale.php.
Definition at line 795 of file ezlocale.php.
Definition at line 779 of file ezlocale.php.
| eZLocale::eZLocale | ( | $ | localeString | ) |
Initializes the locale with the locale string $localeString. All locale data is read from locale/$localeString.ini
Definition at line 118 of file ezlocale.php.
Referenced by create(), and instance().
| static eZLocale::fetchByHttpLocaleCode | ( | $ | httpLocaleCode | ) | [static] |
Returns eZLocale object by HTTP locale code $httpLocaleCode
Definition at line 928 of file ezlocale.php.
| eZLocale::formatCleanCurrency | ( | $ | number | ) |
Formats the same as formatCurrency, but drops the currency sign
| currency | input |
Definition at line 1195 of file ezlocale.php.
| eZLocale::formatCurrency | ( | $ | number, |
| $ | as_html = true |
||
| ) |
Definition at line 1185 of file ezlocale.php.
| eZLocale::formatCurrencyWithSymbol | ( | $ | number, |
| $ | symbol | ||
| ) |
Definition at line 1201 of file ezlocale.php.
Referenced by formatCleanCurrency(), and formatCurrency().
| eZLocale::formatDate | ( | $ | date = false | ) |
Formats the date $date according to locale information and returns it. If $date is not specified the current date is used.
Definition at line 998 of file ezlocale.php.
| eZLocale::formatDateTime | ( | $ | date = false | ) |
Formats the date and time $date according to locale information and returns it. If $date is not specified the current date is used.
Definition at line 1016 of file ezlocale.php.
| eZLocale::formatDateTimeType | ( | $ | fmt, |
| $ | datetime = false |
||
| ) |
Formats the date and time $datetime according to the format $fmt. You shouldn't call this directly unless you want to deviate from the locale settings.
Definition at line 1060 of file ezlocale.php.
Referenced by formatDateTime(), and formatShortDateTime().
| eZLocale::formatDateType | ( | $ | fmt, |
| $ | date = false |
||
| ) |
Formats the date $date according to the format $fmt. You shouldn't call this directly unless you want to deviate from the locale settings.
Definition at line 1035 of file ezlocale.php.
Referenced by formatDate(), and formatShortDate().
| eZLocale::formatNumber | ( | $ | number | ) |
Formats the number $number according to locale information and returns it.
Definition at line 1155 of file ezlocale.php.
| eZLocale::formatShortDate | ( | $ | date = false | ) |
Formats the date $date according to locale information for short dates and returns it. If $date is not specified the current date is used.
Definition at line 1007 of file ezlocale.php.
| eZLocale::formatShortDateTime | ( | $ | date = false | ) |
Formats the date and time $date according to locale information for short dates and returns it. If $date is not specified the current date is used.
Definition at line 1025 of file ezlocale.php.
| eZLocale::formatShortTime | ( | $ | time = false | ) |
Formats the time $time according to locale information for short times and returns it. If $time is not specified the current time is used.
Definition at line 953 of file ezlocale.php.
| eZLocale::formatTime | ( | $ | time = false | ) |
Formats the time $time according to locale information and returns it. If $time is not specified the current time is used.
Definition at line 944 of file ezlocale.php.
| eZLocale::formatTimeType | ( | $ | fmt, |
| $ | time = false |
||
| ) |
Formats the time $time according to the format $fmt. You shouldn't call this directly unless you want to deviate from the locale settings.
Definition at line 963 of file ezlocale.php.
Referenced by formatShortTime(), and formatTime().
| eZLocale::getFormattingFunction | ( | $ | qualifier | ) |
Returns the method name belonging to a qualifier
Definition at line 913 of file ezlocale.php.
| eZLocale::hasAttribute | ( | $ | attribute | ) |
Definition at line 527 of file ezlocale.php.
Definition at line 699 of file ezlocale.php.
| eZLocale::initCountry | ( | &$ | countryINI | ) | [private] |
Definition at line 322 of file ezlocale.php.
Referenced by eZLocale().
| eZLocale::initLanguage | ( | &$ | languageINI | ) | [private] |
Definition at line 361 of file ezlocale.php.
Referenced by eZLocale().
| eZLocale::initPHP | ( | $ | charset = false | ) |
Sets locale information in PHP. This means that some of the string/sort functions in PHP will work with non-latin1 characters. Make sure setLanguage is called before this.
Definition at line 515 of file ezlocale.php.
| static eZLocale::instance | ( | $ | localeString = false | ) | [static] |
Returns a shared instance of the eZLocale class pr locale string.
If $localeString is not specified the default local string in site.ini is used. Use this instead of newing eZLocale to benefit from speed and unified access. note: Use create() if you need to get a new unique copy you can alter.
| string | false | $localeString |
Definition at line 1546 of file ezlocale.php.
Referenced by eZContentLanguage\addLanguage(), eZGeneralDigestHandler\attribute(), eZShopOperationCollection\checkCurrency(), eZTemplateCompiler\compilationFilename(), countryFile(), create(), eZSimplePrice\currency(), currencyForLocale(), currentLocaleCode(), eZCurrency\eZCurrency(), eZDate\eZDate(), eZDateTime\eZDateTime(), eZTime\eZTime(), eZFloatType\fetchClassAttributeHTTPInput(), eZContentFunctionCollection\fetchLocale(), eZOrder\fetchLocaleCurrencyCode(), eZFloatType\fetchObjectAttributeHTTPInput(), eZPriceType\fetchObjectAttributeHTTPInput(), eZRSSExport\fetchRSS2_0(), eZCountryType\fetchTranslatedNames(), eZFloatType\fixupClassAttributeHTTPInput(), eZRSSExport\generateFeed(), eZSubTreeHandler\handlePublishEvent(), httpLocaleCode(), eZi18nOperator\i18nTrans(), eZTemplateLocaleOperator\l10nTransformation(), languageFile(), eZContentObjectTranslation\locale(), localeFile(), localeList(), eZContentLanguage\localeObject(), eZDateOperatorCollection\modify(), eZTemplateLocaleOperator\modify(), eZTemplateUnitOperator\modify(), eZTemplateUnitOperator\operatorTransform(), eZDiscountSubRule\setAttribute(), eZDateType\title(), eZTimeType\title(), eZDateTimeType\title(), ezpI18n\translateText(), eZContentObjectVersion\unserialize(), eZContentObject\unserialize(), eZFloatType\validateClassAttributeHTTPInput(), eZPriceType\validateObjectAttributeHTTPInput(), and eZFloatType\validateObjectAttributeHTTPInput().
| eZLocale::internalCurrency | ( | $ | number | ) |
Formats the currency according locale to the representation used internally in PHP
Definition at line 1222 of file ezlocale.php.
| eZLocale::internalNumber | ( | $ | number | ) |
Formats the number according locale to the representation used internally in PHP
Definition at line 1166 of file ezlocale.php.
Returns the name of the language in English (eng).
Definition at line 738 of file ezlocale.php.
| static eZLocale::isDebugEnabled | ( | ) | [static] |
Definition at line 1596 of file ezlocale.php.
Referenced by countryFile(), languageFile(), and localeFile().
Returns true if the week starts with monday, false if sunday.
Definition at line 771 of file ezlocale.php.
Definition at line 314 of file ezlocale.php.
Returns the language code for this language, for instance nor for norwegian or eng for english.
Definition at line 646 of file ezlocale.php.
Referenced by languageFile(), and localeFile().
Returns the comment for the language, if any.
Definition at line 654 of file ezlocale.php.
| eZLocale::languageFile | ( | $ | withVariation = false | ) |
Returns the eZINI object for the language ini file.
Definition at line 1513 of file ezlocale.php.
Referenced by eZLocale().
| static eZLocale::languageList | ( | $ | withVariations = true | ) | [static] |
| $withVariations | If true it will include variations of locales (ends with ) |
Definition at line 1427 of file ezlocale.php.
Returns the name of the language in its own tounge.
Definition at line 730 of file ezlocale.php.
Returns the locale code for this language which is the language and the country with a dash (-) between them, for instance nor-NO or eng-GB.
Definition at line 676 of file ezlocale.php.
Referenced by httpLocaleCode().
| eZLocale::localeFile | ( | $ | withVariation = false | ) |
Returns the eZINI object for the locale ini file.
Definition at line 1454 of file ezlocale.php.
Referenced by eZLocale().
Same as localeCode() but appends the country variation if it is set.
Definition at line 684 of file ezlocale.php.
| eZLocale::localeInformation | ( | $ | localeString | ) |
Decodes a locale string into language, country and charset and returns an array with the information. Country and charset is optional, country is specified with a - or _ followed by the country code (NO, GB), charset is specified with a . followed by the charset name. Examples of locale strings are: nor-NO, en_GB.utf8, nn_NO
Definition at line 471 of file ezlocale.php.
Referenced by eZLocale().
| static eZLocale::localeList | ( | $ | asObject = false, |
| $ | withVariations = true |
||
| ) | [static] |
| $asObject | If true it returns each element as an eZLocale object |
| $withVariations | If true it will include variations of locales (ends with ) |
Definition at line 1360 of file ezlocale.php.
Referenced by eZSetupLanguageList(), fetchByHttpLocaleCode(), eZContentFunctionCollection\fetchLocale(), and eZContentFunctionCollection\fetchLocaleList().
| static eZLocale::localeRegexp | ( | $ | withVariations = true, |
| $ | withCharset = true |
||
| ) | [static] |
true. The groups 6 and 7 will only be used if $withVariations is true. | $withVariations | If true it will include variations of locales (ends with ) |
Definition at line 460 of file ezlocale.php.
Referenced by countryList(), languageList(), and localeList().
| eZLocale::longDayName | ( | $ | num | ) |
Returns the long name of the day number $num. The different numbers for the days are: Sunday = 0 Monday = 1 Tuesday = 2 Wednesday = 3 Thursday = 4 Friday = 5 Saturday = 6 This functions is usually used together with weekDays().
Definition at line 1276 of file ezlocale.php.
Referenced by formatDateTimeType(), and formatDateType().
| eZLocale::longMonthName | ( | $ | num | ) |
Returns the long name of the month number $num. The different numbers for the months are: Januray = 1 February = 2 March = 3 April = 4 May = 5 June = 6 July = 7 August = 8 September = 9 October = 10 November = 11 December = 12 This functions is usually used together with months().
Definition at line 1340 of file ezlocale.php.
Referenced by formatDateTimeType(), and formatDateType().
| eZLocale::meridiemName | ( | $ | time = false, |
| $ | upcase = false |
||
| ) |
Returns the name for the meridiem ie am (ante meridiem) or pm (post meridiem). If $time is not supplied or false the current time is used. If $upcase is false the name is in lowercase otherwise uppercase. The time is defined to be am if the hour is less than 12 and pm otherwise. Normally the hours 00 and 12 does not have am/pm attached and are instead called Midnight and Noon, but for simplicity the am/pm is always attached (if the locale allows it).
Definition at line 983 of file ezlocale.php.
Referenced by formatDateTimeType(), and formatTimeType().
| eZLocale::months | ( | ) |
Returns the months of the year as an array. This only supplied for completeness.
Definition at line 870 of file ezlocale.php.
Returns the names of months as an array.
Definition at line 879 of file ezlocale.php.
Definition at line 803 of file ezlocale.php.
Definition at line 811 of file ezlocale.php.
| eZLocale::reset | ( | ) | [private] |
Definition at line 248 of file ezlocale.php.
Referenced by eZLocale().
| static eZLocale::resetGlobals | ( | $ | localeString = false | ) | [static] |
Definition at line 1615 of file ezlocale.php.
| static eZLocale::setIsDebugEnabled | ( | $ | debug | ) | [static] |
Sets whether internal debugging is enabled or not.
Definition at line 1607 of file ezlocale.php.
| eZLocale::shortDayName | ( | $ | num | ) |
Returns the short name of the day number $num. The different numbers for the days are: Sunday = 0 Monday = 1 Tuesday = 2 Wednesday = 3 Thursday = 4 Friday = 5 Saturday = 6 This functions is usually used together with weekDays().
Definition at line 1249 of file ezlocale.php.
Referenced by formatDateTimeType(), and formatDateType().
| eZLocale::shortMonthName | ( | $ | num | ) |
Returns the short name of the month number $num. The different numbers for the months are: Januray = 1 February = 2 March = 3 April = 4 May = 5 June = 6 July = 7 August = 8 September = 9 October = 10 November = 11 December = 12 This functions is usually used together with months().
Definition at line 1308 of file ezlocale.php.
Referenced by formatDateTimeType(), and formatDateType().
Definition at line 787 of file ezlocale.php.
| static eZLocale::transformToPHPFormat | ( | $ | fmt, |
| $ | allowed | ||
| ) | [static, private] |
Transforms the date/time string $fmt into a string that can be passed to the PHP function 'date'.
| $fmt | An eZ Publish locale format, x means a 'formatting character' from PHPs 'date' function. |
| $allowed | An array with characters that are considered allowed 'formatting characters' Any character not found in this array will be kept intact by escaping it. |
Definition at line 1095 of file ezlocale.php.
Referenced by formatDateTimeType(), formatDateType(), and formatTimeType().
Definition at line 1214 of file ezlocale.php.
Returns the locale code which is used for translation files. Normally this is the same as localeCode() but for some locales translation from other languages can be used
e.g. por-MZ (Mozambique) uses por-PT for translation.
Definition at line 667 of file ezlocale.php.
| eZLocale::weekDayNames | ( | $ | short = false | ) |
Returns the same array as in weekDays() but with all days translated to text.
Definition at line 887 of file ezlocale.php.
Referenced by weekDayShortNames().
Returns an array with the days of the week according to locale information. Each entry in the array can be supplied to the shortDayName() and longDayName() functions.
Definition at line 861 of file ezlocale.php.
Returns the same array as in weekDayNames() but with short version of days.
Definition at line 905 of file ezlocale.php.
| eZLocale::$AM |
AM and PM names.
Definition at line 1646 of file ezlocale.php.
| eZLocale::$Country |
Objects.
Definition at line 1687 of file ezlocale.php.
| eZLocale::$CountryCode |
Definition at line 1688 of file ezlocale.php.
| eZLocale::$CountryComment |
Definition at line 1690 of file ezlocale.php.
| eZLocale::$CountryINI |
Definition at line 1693 of file ezlocale.php.
| eZLocale::$CountryNames |
Definition at line 1701 of file ezlocale.php.
| eZLocale::$CountryVariation |
Definition at line 1689 of file ezlocale.php.
| eZLocale::$CurrencyDecimalSymbol |
Currency.
Definition at line 1660 of file ezlocale.php.
| eZLocale::$CurrencyFractDigits |
Definition at line 1662 of file ezlocale.php.
| eZLocale::$CurrencyNegativeFormat |
Definition at line 1667 of file ezlocale.php.
| eZLocale::$CurrencyNegativeSymbol |
Definition at line 1663 of file ezlocale.php.
| eZLocale::$CurrencyPositiveFormat |
Definition at line 1666 of file ezlocale.php.
| eZLocale::$CurrencyPositiveSymbol |
Definition at line 1664 of file ezlocale.php.
| eZLocale::$CurrencySymbol |
Definition at line 1665 of file ezlocale.php.
| eZLocale::$CurrencyThousandsSeparator |
Definition at line 1661 of file ezlocale.php.
| eZLocale::$DateArray |
Definition at line 1680 of file ezlocale.php.
| eZLocale::$DateFormat |
Format of dates.
Definition at line 1636 of file ezlocale.php.
| eZLocale::$DatePHPArray |
Definition at line 1682 of file ezlocale.php.
| eZLocale::$DayNames |
Help arrays.
Definition at line 1672 of file ezlocale.php.
| eZLocale::$DecimalSymbol |
Numbers.
Definition at line 1651 of file ezlocale.php.
| eZLocale::$FractDigits |
Definition at line 1653 of file ezlocale.php.
| eZLocale::$IntlLanguageName |
Internationalized name of the language.
Definition at line 1700 of file ezlocale.php.
| eZLocale::$IsValid |
Definition at line 1631 of file ezlocale.php.
| eZLocale::$LanguageCode |
The language code, for instance nor-NO, or eng-GB.
Definition at line 1696 of file ezlocale.php.
| eZLocale::$LanguageComment |
Definition at line 1691 of file ezlocale.php.
| eZLocale::$LanguageINI |
Definition at line 1694 of file ezlocale.php.
| eZLocale::$LanguageName |
Name of the language.
Definition at line 1698 of file ezlocale.php.
| eZLocale::$LocaleINI |
Definition at line 1692 of file ezlocale.php.
| eZLocale::$LongDayNames |
Definition at line 1673 of file ezlocale.php.
| eZLocale::$LongMonthNames |
Definition at line 1675 of file ezlocale.php.
| eZLocale::$LongWeekDayNames |
Definition at line 1677 of file ezlocale.php.
| eZLocale::$MondayFirst |
True if monday is the first day of the week.
Definition at line 1644 of file ezlocale.php.
| eZLocale::$MonthNames |
Definition at line 1674 of file ezlocale.php.
| eZLocale::$Months |
Definition at line 1676 of file ezlocale.php.
| eZLocale::$NegativeSymbol |
Definition at line 1654 of file ezlocale.php.
| eZLocale::$PM |
Definition at line 1646 of file ezlocale.php.
| eZLocale::$PositiveSymbol |
Definition at line 1655 of file ezlocale.php.
| eZLocale::$ShortDateFormat |
Format of short dates.
Definition at line 1638 of file ezlocale.php.
| eZLocale::$ShortDayNames |
Definition at line 1673 of file ezlocale.php.
| eZLocale::$ShortMonthNames |
Definition at line 1675 of file ezlocale.php.
| eZLocale::$ShortTimeFormat |
Format of short times.
Definition at line 1642 of file ezlocale.php.
| eZLocale::$ShortWeekDayNames |
Definition at line 1677 of file ezlocale.php.
| eZLocale::$ThousandsSeparator |
Definition at line 1652 of file ezlocale.php.
| eZLocale::$TimeArray |
Definition at line 1679 of file ezlocale.php.
| eZLocale::$TimeFormat |
Format of times.
Definition at line 1640 of file ezlocale.php.
| eZLocale::$TimePHPArray |
Definition at line 1681 of file ezlocale.php.
| eZLocale::$WeekDays |
Definition at line 1676 of file ezlocale.php.
| const eZLocale::DEBUG_INTERNALS = false |
Definition at line 112 of file ezlocale.php.
Referenced by isDebugEnabled().