PHP - setlocale

Syntax

setlocale("Kategorie","Region")

Erklärung

Mit der Funktion setlocale lassen sich bestimmte Text-Ausgaben (z. Bsp. Datum, Uhrzeit, Wochentag, Dezimaltrennzeichen bei Zahlen) u.ä. an die Besonderheiten eines bestimmten Landes bzw. Region anpassen. Der Parameter "Kategorie" bestimmt dabei, welche Funktionen durch die landesspezifische Einstellung betroffen sind. Dabei sind folgende Werte möglich:

LC_ALL - alle Einstellungen
LC_COLLATE - für den Zeichenkettenvergleich
LC_CTYPE - für die Zeichenkettenumwandlung (z.B. strtoupper)
LC_MONETARY - für Währungsfunktionen (z.B. localeconv)
LC_NUMERIC - für numerische Operationen (z.B. Dezimaltrennzeichen)
LC_TIME - Für Datums- und Zeitfunktionen (z.B. strftime)

Der Parameter "Region" bestimmt an die Besonderheiten welches Landes bzw. Region die Arbeit der Funktionen angepasst wird. Bei "0" (Null) wird die aktuelle Einstellung ausgegeben, aber der Wert nicht verändert. Wird eine leere Zeichenkette ("") eingesetzt, so versucht der PHP-Parser die Einstellung der Betriebssystem-Umgebung anzupasen. Ansonsten sind folgende Werte für "Region" zulässig (Auszug, insg. sind über 50 Werte möglich):

de_DE - Deutschland (teilweise auch de, g, ge, gw)
de_AT - Österreich
de_CH - Schweiz
fr_FR - Frankreich
en_GB - Großbritannien
en_US - USA

Beispiel

<?php

setlocale (LC_TIME,"de_DE");

echo strftime("%B - ");

setlocale (LC_TIME,"en_US");

echo strftime("%B - ");

setlocale (LC_TIME,"fr_FR");

echo strftime("%B");

?>

Ergebnis:

März - March - mars

zurück: PHP - Zeichenketten (Strings)

Ergänzung? Fehler? Schreib uns an team@phpbox.de
Du findest phpbox.de nützlich? Wir freuen uns über einen Link auf phpbox.de

Einstieg in PHP 8 und MySQL
PHP Buch