Forum und email

setlocale

(PHP 4, PHP 5)

setlocale — Sæt sprogindstillinger

Beskrivelse

string setlocale ( mixed $category , string $locale [, string $... ] )
string setlocale ( mixed $category , array $locale )

category er en navngivet konstant (eller streng) der specificere den kategori af funktioner der er berørt af sprogindstillingen:

  • LC_ALL for alle beskrevet herunder
  • LC_COLLATE for strengsammenligning, se strcoll()
  • LC_CTYPE for tegnklassificering og konvertering, for eksempel strtoupper()
  • LC_MONETARY for localeconv()
  • LC_NUMERIC for decimal separator (Se også localeconv())
  • LC_TIME for dato og tid formatering med strftime()

Note: Fra og med PHP 4.2.0, er brug af category som en streng udgået, brug de ovenstående konstanter i stedet. At angive dem som en streng (inden for citationstegn) vil resultere i en advarsel.

Hvis locale er NULL eller den tomme streng "", vil sprogindstillingen blive sat ud fra værdien af miljøvariablen med samme navn som ovenstående kategorier, eller fra "LANG".

Hvis locale er "0", er sprogindstillingen ikke berørt, kun den nuværende indstilling er returneret.

Hvis locale er et array, eller efterfulgt af flere parametre, vil hvert array element eller parameter blive forsøgt som ny sprogindstilling, indtil succes. Dette er brugbar hvis en sprogindstilling er kendt under forskellige navn på forskellige styresystemet eller for at kunne falde tilbage på en muligvis ikke tilgængelig sprogindstilling.

Note: At angive flere sprogindstillinger er ikke muligt før PHP 4.3.0

Setlocale returnerer den nye sprogindstilling, eller FALSE hvis sprogindstillingen ikke er implementeret på dit styresystem, den valgte sprogindstilling ikke eksistere eller navnet på kategorien er ugyldig. Et ugyldigt kategorinavn forsager også en advarsel. Kategori/sprogindstilling navne kan findes i » RFC 1766 og » ISO 639. Forskellige systemer har forskellige navngivning af sprogindstillinger.

Note: Returværdien af setlocale() er afhængig af det system PHP kører på. Den vil returnere præcist det som systemets setlocale funktion returnerer.

Tip

Windows brugere vil kunne drage nytte af information omkring locale strenge på Microsoft's MSDNwebsite. Understøttede sprogstrenge kan findes på » https://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_language_strings.asp og understøttede land/region strenge på » https://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_country_strings.asp. Windows systemer understøtter de 3 tegn koder for lande/regioner specificeret af ISO 3166-Alpha-3, som kan findes på dette » Unicode website.

Example#1 setlocale() Eksempel

<?php
/* Set locale til dansk */
setlocale(LC_ALL'danish');

/* Output: fredag 22 december 1978 */
echo strftime("%A %e %B %Y"mktime(00012221978));

/* prøv mulige sprogindstillinger for tysk, siden PHP 4.3.0 */
$loc_de setlocale(LC_ALL'de_DE@euro''de_DE''de''ge');
echo 
"Den foretrukne sprogindstilling for tysk på dette system er '$loc_de'";
?>

Example#2 setlocale() Eksempel Windows

<?php
/* Set sprogindstilling til hollandsk */
setlocale(LC_ALL'nld_nld');

/* Output: vrijdag 22 december 1978 */
echo strftime("%A %d %B %Y"mktime(00012221978));

/* prøv mulige sprogindstillinger for tysk, siden PHP 4.3.0 */
$loc_de setlocale(LC_ALL'de_DE@euro''de_DE''deu_deu');
echo 
"Den foretrukne sprogindstilling for tysk på dette system er '$loc_de'";
?>