setlocale

(PHP 4, PHP 5, PHP 7, PHP 8)

setlocaleModifie les informations de localisation

Description

setlocale(int$category, string$locales, string...$rest): string|false

Signature alternative (non supporté avec les arguments nommés) :

setlocale(int$category, array$locale_array): string|false

Définit les informations de localisation.

Avertissement

L'information locale est maintenue par processus, non par thread. Si vous faites fonctionner PHP sur un serveur multithreadé, vous pourriez obtenir des changements soudains des configurations locales pendant qu'un script fonctionne, même si celui-ci n'appelle jamais la fonction setlocale(). Ceci survient à cause des autres scripts qui fonctionnent dans des threads différents du même processus. Ces scripts changent les configurations locales dans le processus au complet en utilisant la fonction setlocale(). Sur Windows, les informations de locale sont maintenue par thread à partir de PHP 7.0.5.

Liste de paramètres

category

category est une constante (ou une chaîne) qui spécifie la catégorie de fonctions affectées par la configuration de localisation :

locales

Si locales est la chaîne vide (""), les noms de locales seront pris dans l'environnement, à partir des variables de même nom que les catégories ci-dessus, ou depuis "LANG".

Si locales vaut "0", la configuration locale ne sera pas modifiée, et la configuration courante sera retournée.

Si locales est suivi par des paramètres additionnels, alors chaque paramètre tente d'être défini comme nouvelle locale jusqu'à ce qu'un réussisse. Cela est pratique si la locale est connue sous différents noms sur des systèmes différents ou bien pour prévoir une autre valeur en cas de non disponibilité de la locale choisie.

rest

Paramètres optionnels de chaîne à essayer comme paramètre de locale jusqu'à une réussite.

locale_array

Chaque élément du tableau est essayé à être définie comme la nouvelle locale jusqu'à une réussite. Ceci est utile si une locale est connue sous différent noms sur des systèmes différents ou pour fournis une solution de repli pour une locale potentiellement indisponible.

Note:

Sous Windows, setlocale(LC_ALL, '') définit les noms de la locale depuis la configuration de la langue/de la région du système d'exploitation (accessible depuis le Panneau de Contrôle).

Valeurs de retour

Retourne la nouvelle configuration locale, ou false si la localisation n'est pas implémentée sur votre plate-forme, si la variable de localisation n'existe pas, ou si la catégorie spécifiée n'est pas valide.

Un nom de catégorie invalide générera un message d'alerte. La liste des noms de locales/catégories peut être trouvée en consultant la » RFC 1766 ainsi que l'» ISO 639. Les différentes plates-formes possèdent des conventions de nommages différentes.

Note:

La valeur retournée par setlocale() dépend du système sur lequel PHP est installé. setlocale() retourne exactement ce que la fonction système setlocale retourne.

Exemples

Exemple #1 Exemple avec setlocale()

<?php

setlocale(LC_ALL, 'nl_NL');


echo strftime("%A %e %B %Y", mktime(0, 0, 0, 12, 22, 1978));


$loc_de = setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
echo
"L'identifiant de l'allemand sur ce système est '$loc_de'";
?>

Exemple #2 Exemple avec setlocale() sous Windows

<?php

setlocale(LC_ALL, 'nld_nld');


echo strftime("%A %d %B %Y", mktime(0, 0, 0, 12, 22, 1978));


$loc_de = setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'deu_deu');
echo
"L'identifiant de l'allemand sur ce système est '$loc_de'";
?>

Notes

Astuce

Les utilisateurs de Windows trouveront des informations utiles à propos du paramètre locales sur le site web MSDN de Microsoft. Les valeurs de locales supportées peuvent être trouvées » sur la page de la documentation des chaînes du langage et les chaînes de pays/région » sur la page de la documentation des chaînes de pays/région.

To Top