Environnement :
CentOS 7.3.1611
PHP 7.1.3
Code :
echo setlocale(LC_ALL, array('zh_CN.UTF-8', 'zh_CN.utf8', 'zh_CN')), PHP_EOL;
$date = new DateTime();
echo $date->format('Y-F-d l'), PHP_EOL;
Sortie :
zh_CN.UTF-8
2017-May-22 Monday
Test supplémentaire, en Shell :
# export LC_ALL=zh_CN.UTF_8
# date
2017年 05月 22日 星期一 19:02:15 CST
# export LC_ALL=en_US.UTF_8
# date
Mon May 22 19:02:34 CST 2017
Question :
Il est possible de localiser la sortie de date dans Bash.
Pourquoi est-il invalide d'utiliser la fonction setlocale() en PHP ?
Veuillez demander conseil à des experts.
Aucune des deux réponses ci-dessus n'atteint le point.
setlocale
setlocale
strftime
strftime
- Formater l'heure/la date locale en fonction des paramètres régionauxCes deux fonctions doivent être utilisées ensemble pour voir l'effet.
Cependant, malgré cela, les performances sont toujours différentes de celles obtenues lorsque vous appelez directement le système bash et peuvent ne pas répondre à vos attentes.
La commande date dans bash appelle une application de date sous Linux pour réaliser l'affichage et la sortie de la fonction date
php est l'objet date et la fonction implémentés par lui-même
Il est tout à fait compréhensible que les fonctions des deux soient différentes !
Ce sont deux langages avec des méthodes et des mécanismes différents Si vous utilisez la méthode de
.php
里面想得到中文这种格式,完全可以在php
中通过exec
调用shell
: