GETLOCALE |
Description Gets the current ColdFusion MX geographic/language locale value. To set the default display format of date, time, number, and currency values in a ColdFusion application session, you use the SetLocale function.
Returns The current locale value, as an English string. If a locale has a Java name and a name that ColdFusion MX used prior to the ColdFusion MX 7 release (for example, en_US and English (US)), ColdFusion MX returns the ColdFusion name (for example, English (US)).
Category Display and formatting functions, International functions, System functions
Function syntax
    GetLocale()
See also GetLocaleDisplayName, SetLocale
History ColdFusion MX 7: Added support for all Java locales and locale names. ColdFusion MX: Changed behavior to that described in usage.
Usage This function returns the locale name as it is represented in ColdFusion MX; for example, Portuguese (Brazilian), or ca_ES. To get a locale name in the language of the locale, use the GetLocaleDisplayName function, which returns português (Brasil) and català (Espanya).

This function determines whether a locale value is set for ColdFusion MX. (The value is set with the SetLocale function.)

- If the ColdFusion MX locale value is present, the function returns it.
- If the ColdFusion MX locale has not been explicitly set, ColdFusion now determines whether the default locale of the ColdFusion server computer operating system is among the locale values it supports. (The default locale is stored in the user environment variables user.language and user.region.)

If the default locale value is not supported, the function returns English (US). ColdFusion sets the locale in the JVM to this value; it persists until the server is restarted or it is reset with the SetLocale function.

This function does not access a web browser's Accept-Language HTTP header setting.

Note: | When ColdFusion is started, it stores the supported locale values in the variable Server.ColdFusion.SupportedLocales. ColdFusion MX supports the locales supported by its Java runtime environment. The SupportedLocales value lists the Java names for the supported locales and the corresponding names that ColdFusion MX used prior to the ColdFusion MX 7 release.

For more information, see "Locales" in Chapter 17, "Developing Globalized Applications," in ColdFusion MX Developer's Guide.

Example
    <h3>Example: Using SetLocale and GetLocale</h3>
    <cfoutput>
       <!--- For each new request, the locale gets reset to the JVM locale --->
       Initial locale's ColdFusion name: #GetLocale()#<br>
       <br>
       <!--- Do this only if the form was submitted. --->
       <cfif IsDefined("form.mylocale")>
          <b>Changing locale to #form.mylocale#</b><br>
          <br>
          <!--- Set the locale to the submitted value and save the old ColdFusion
    locale name.  --->
          <cfset oldlocale=SetLocale("#form.mylocale#")>
          <!--- Get the current locale. It should have changed. --->
          New locale: #GetLocale()#<br>
       </cfif>

       <!--- Self-submitting form to select the new locale. --->
       <cfform>
          <h3>Please select the new locale:</h3>
          <cfselect name="mylocale">
             <!--- The server.coldfusion.supportedlocales variable is a
                   list of all supported locale names. Use a list cfloop tag
                   to create an HTML option tag for each name in the list. --->
             <cfloop index="i" list="#server.coldfusion.supportedlocales#">
                <option value="#i#">#i#</option>
             </cfloop>
          </cfselect><br>
          <br>
          <cfinput type="submit" name="submitit" value="Change Locale">
       </cfform>
    </cfoutput>