System.I18N.core
[ class tree: System.I18N.core ] [ index: System.I18N.core ] [ all elements ]

Class: CultureInfo

Source Location: /I18N/core/CultureInfo.php

Class Overview


CultureInfo class.

Class Details

[line 50]
CultureInfo class.

Represents information about a specific culture including the names of the culture, the calendar used, as well as access to culture-specific objects that provide methods for common operations, such as formatting dates, numbers, and currency.

The CultureInfo class holds culture-specific information, such as the associated language, sublanguage, country/region, calendar, and cultural conventions. This class also provides access to culture-specific instances of DateTimeFormatInfo and NumberFormatInfo. These objects contain the information required for culture-specific operations, such as formatting dates, numbers and currency.

The culture names follow the format "<languagecode>_<country/regioncode>", where <languagecode> is a lowercase two-letter code derived from ISO 639 codes. You can find a full list of the ISO-639 codes at http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt

The <country/regioncode2> is an uppercase two-letter code derived from ISO 3166. A copy of ISO-3166 can be found at http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html

For example, Australian English is "en_AU".




version:  v1.0, last update on Sat Dec 04 13:41:46 EST 2004
author:  Xiang Wei Zhuo <weizhuo[at]gmail[dot]com>


[ Top ]

Variables

Constants

Methods



Class Variables

$properties = array()

[line 98]

A list of properties that are accessable/writable.



access:  protected

Type:   array


[ Top ]



Class Methods


constructor __construct [line 168]

return __construct( [string $culture = 'en'])

Initializes a new instance of the CultureInfo class based on the culture specified by name. E.g.



return:  new CultureInfo.


Parameters:

string   $culture   a culture name, e.g. "en_AU".

[ Top ]

method dataDir [line 189]

string dataDir( )

Get the default directory for the ICU data.

The default is the "data" directory for this class.




return:  directory containing the ICU data.
access:  protected


[ Top ]

method fileExt [line 198]

string fileExt( )

Get the filename extension for ICU data. Default is ".dat".



return:  filename extension for ICU data.
access:  protected


[ Top ]

method findInfo [line 306]

mixed findInfo( [string $path = '/'], [boolean $merge = false])

Find the specific ICU data information from the data.

The path to the specific ICU data is separated with a slash "/". E.g. To find the default calendar used by the culture, the path "calendar/default" will return the corresponding default calendar. Use merge=true to return the ICU including the parent culture. E.g. The currency data for a variant, say "en_AU" contains one entry, the currency for AUD, the other currency data are stored in the "en" data file. Thus to retrieve all the data regarding currency for "en_AU", you need to use findInfo("Currencies,true);.




return:  the specific ICU data.
access:  protected


Parameters:

string   $path   the data you want to find.
boolean   $merge   merge the data from its parents.

[ Top ]

method getCalendar [line 389]

string getCalendar( )

Gets the default calendar used by the culture, e.g. "gregorian".



return:  the default calendar.


[ Top ]

method getCountries [line 576]

array getCountries( )

Get a list of countries in the language of the localized version.



return:  a list of localized country names.


[ Top ]

method getCultures [line 512]

array getCultures( [int $type = CultureInfo::ALL])

Gets the list of supported cultures filtered by the specified culture type. This is an EXPENSIVE function, it needs to traverse a list of ICU files in the data directory.

This function can be called statically.




return:  list of culture information available.
static:  


Parameters:

int   $type   culture type, CultureInfo::ALL, CultureInfo::NEUTRAL or CultureInfo::SPECIFIC.

[ Top ]

method getCurrencies [line 585]

array getCurrencies( )

Get a list of currencies in the language of the localized version.



return:  a list of localized currencies.


[ Top ]

method getData [line 278]

array &getData( string $filename)

Get the data by unserializing the ICU data from disk.

The data files are cached in a static variable inside this function.




return:  ICU data
access:  protected


Parameters:

string   $filename   the ICU data filename

[ Top ]

method getDateTimeFormat [line 364]

DateTimeFormatInfo getDateTimeFormat( )

Gets the DateTimeFormatInfo that defines the culturally appropriate format of displaying dates and times.



return:  date time format information for the culture.


[ Top ]

method getEnglishName [line 419]

array getEnglishName( )

Gets the culture name in English.

Returns

  1. array('Language','Country');
'Country' is omitted if the culture is neutral.




return:  array with language and country as elements.


[ Top ]

method getInvariantCulture [line 440]

CultureInfo getInvariantCulture( )

Gets the CultureInfo that is culture-independent (invariant).

Any changes to the invariant culture affects all other instances of the invariant culture. The invariant culture is assumed to be "en";




return:  invariant culture info is "en".
static:  


[ Top ]

method getIsNeutralCulture [line 454]

boolean getIsNeutralCulture( )

Gets a value indicating whether the current CultureInfo represents a neutral culture. Returns true if the culture only contains two characters.



return:  true if culture is neutral, false otherwise.


[ Top ]

method getLanguages [line 594]

array getLanguages( )

Get a list of languages in the language of the localized version.



return:  list of localized language names.


[ Top ]

method getName [line 354]

string getName( )

Gets the culture name in the format "<languagecode2>_(country/regioncode2)".



return:  culture name.


[ Top ]

method getNativeName [line 401]

array getNativeName( )

Gets the culture name in the language that the culture is set to display. Returns
  1. array('Language','Country');
'Country' is omitted if the culture is neutral.



return:  array with language and country as elements, localized.


[ Top ]

method getNumberFormat [line 464]

NumberFormatInfo getNumberFormat( )

Gets the NumberFormatInfo that defines the culturally appropriate format of displaying numbers, currency, and percentage.



return:  the number format info for current culture.


[ Top ]

method getParent [line 494]

CultureInfo getParent( )

Gets the CultureInfo that represents the parent culture of the

current CultureInfo




return:  parent culture information.


[ Top ]

method getScripts [line 603]

array getScripts( )

Get a list of scripts in the language of the localized version.



return:  list of localized script names.


[ Top ]

method getTimeZones [line 612]

array getTimeZones( )

Get a list of timezones in the language of the localized version.



return:  list of localized timezones.


[ Top ]

method loadCultureData [line 237]

void loadCultureData( string $culture)

Load the ICU culture data for the specific culture identifier.



access:  protected


Parameters:

string   $culture   the culture identifier.

[ Top ]

method setCulture [line 222]

void setCulture( string $culture)

Set the culture for the current instance. The culture indentifier must be of the form "<language>_(country/region)".



access:  protected


Parameters:

string   $culture   culture identifier, e.g. "fr_FR_EURO".

[ Top ]

method setDateTimeFormat [line 380]

void setDateTimeFormat( DateTimeFormatInfo $dateTimeFormat)

Set the date time format information.



Parameters:

DateTimeFormatInfo   $dateTimeFormat   the new date time format info.

[ Top ]

method setNumberFormat [line 484]

void setNumberFormat( NumberFormatInfo $numberFormat)

Set the number format information.



Parameters:

NumberFormatInfo   $numberFormat   the new number format info.

[ Top ]

method validCulture [line 209]

boolean validCulture( string $culture)

Determine if a given culture is valid. Simply checks that the culture data exists.



return:  true if valid, false otherwise.
access:  public


Parameters:

string   $culture   a culture

[ Top ]

method __get [line 137]

mixed __get( mixed $name)

Allow functions that begins with 'set' to be called directly as an attribute/property to retrieve the value.



[ Top ]

method __set [line 150]

void __set( mixed $name, mixed $value)

Allow functions that begins with 'set' to be called directly as an attribute/property to set the value.



[ Top ]

method __toString [line 126]

string __toString( )

Display the culture name.



return:  the culture name.
see:  CultureInfo::getName()


[ Top ]


Class Constants

ALL =  0

[line 105]

Culture type, all.




[ Top ]

NEUTRAL =  1

[line 112]

Culture type, neutral.




[ Top ]

SPECIFIC =  2

[line 119]

Culture type, specific.




[ Top ]



© 2004-2005 PRADO Software Group. All Rights Reserved.