setlocale
(PHP 4, PHP 5, PHP 7)
setlocale — Modifie les informations de localisation
Description
$category
, string $locale
[, string $...
] )$category
, array $locale
)Modifie les informations de localisation.
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 :-
LC_ALL
pour toutes les constantes suivantes -
LC_COLLATE
pour la comparaison de chaînes de caractères. Voir strcoll() -
LC_CTYPE
pour la classification et la conversion de caractères. Voir strtoupper() -
LC_MONETARY
pour localeconv() -
LC_NUMERIC
pour le séparateur décimal. Voir localeconv() -
LC_TIME
pour le format de date et d'heure avec strftime() -
LC_MESSAGES
pour les réponses système (disponible si PHP a été compilé avec libintl)
-
-
locale
-
Si
locale
estNULL
ou 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
locale
vaut "0", la configuration locale ne sera pas modifiée, et la configuration courante sera retournée.Si
locale
est un tableau ou bien est suivi par des paramètres additionnels, alors chaque élément du tableau ou 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. -
...
-
(Chaîne ou tableau de paramètres optionnel à essayer comme configuration de la locale jusqu'à réussite.)
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.
Historique
Version | Description |
---|---|
7.0.0 |
Le support du paramètre category sous forme de
chaîne de caractères a été supprimé. Seules les constantes
LC_* peuvent être utilisées avec
cette version.
|
5.3.0 |
Cette fonction émet désormais une alerte E_DEPRECATED
si une chaîne est passée comme paramètre category
au lieu d'une des constantes LC_*.
|
Exemples
Exemple #1 Exemple avec setlocale()
<?php
/* Configure le script en hollandais */
setlocale(LC_ALL, 'nl_NL');
/* Affiche : vrijdag 22 december 1978 */
echo strftime("%A %e %B %Y", mktime(0, 0, 0, 12, 22, 1978));
/* Essai de différentes valeurs possible pour l'allemand */
$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
/* Configure le script en hollandais */
setlocale(LC_ALL, 'nld_nld');
/* Affiche : vrijdag 22 december 1978 */
echo strftime("%A %d %B %Y", mktime(0, 0, 0, 12, 22, 1978));
/* Essai de différentes valeurs possible pour l'allemand */
$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
L'information locale est maintenue par processus, non par thread. Si vous faites fonctionner PHP sur un serveur multi-threadé comme IIS, HHVM ou Apache sur Windows, 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().
Les utilisateurs de Windows trouverons des informations utiles à
propos du paramètre locale
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.
Version en cache
21/11/2024 15:21:22 Cette version de la page est en cache (à la date du 21/11/2024 15:21:22) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.setlocale.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.