En PHP, le traitement des dates et des heures est une exigence commune. Pour de nombreux développeurs, comment personnaliser la sortie du format de date en fonction des différents besoins est souvent un mal de tête. Heureusement, la fonction Strftime () intégrée de PHP peut facilement nous aider à gérer la sortie personnalisée au format de date. Cet article expliquera en détail comment utiliser la fonction strftime () pour personnaliser le format de date et afficher certains scénarios d'application courants.
STRFTime () est une fonction de formatage de date dans PHP, qui est utilisée pour sortir les dates et les temps en fonction du format spécifié. Contrairement à la fonction date () , strFtime () vous permet d'utiliser un format de date plus localisé, qui peut s'adapter automatiquement aux formats de temps dans différentes langues et régions.
La syntaxe de base de la fonction strftime () est la suivante:
<span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$format</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$timestamp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">time</span></span><span>()) : </span><span><span class="hljs-keyword">string</span></span><span>
</span></span>
$ format : il s'agit d'une chaîne de format de date contenant les caractères formatés dont nous avons besoin.
$ horodatage : il s'agit de l'horodatage, la valeur par défaut est l'heure actuelle. Si vous passez d'autres horodatages, la fonction sera formatée en fonction du moment où il est passé.
Voici quelques caractères de mise en forme StraTime () couramment utilisés:
Format des caractères | décrire | Exemple |
---|---|---|
% Y | Terminez à quatre chiffres des années | 2025 |
% m | Mois (double chiffre, 01-12) | 06 |
%d | Jour (double chiffre, 01-31) | 14 |
% H | Heures (24 heures, 00-23) | 15 |
% M | Minutes (00-59) | 30 |
% S | Secondes (00-59) | 45 |
%un | Abréviation de la semaine (anglais) | Lun |
%UN | Nom complet de la semaine (anglais) | Lundi |
% b | Abréviation du mois (anglais) | Juin |
% B | Nom complet du mois (anglais) | Juin |
Supposons que nous devons produire la date et l'heure du format "14 juin 2025 15:30:45", le code est le suivant:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%YAnnée%mlune%djour %H:%M:%S"</span></span><span>, </span><span><span class="hljs-title function_ invoke__">time</span></span><span>());
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Résultat de sortie:
<span><span><span class="hljs-number">2025</span></span><span><span class="hljs-string">Année06lune14jour</span></span><span> </span><span><span class="hljs-number">15</span></span><span><span class="hljs-string">:30:45</span></span><span>
</span></span>
Si vous souhaitez produire "Lundi 14 juin 2025", vous pouvez utiliser le code suivant:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%YAnnée%mlune%djour Semaine%A"</span></span><span>, </span><span><span class="hljs-title function_ invoke__">time</span></span><span>());
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Résultat de sortie:
<span><span><span class="hljs-number">2025</span></span><span><span class="hljs-string">Année06lune14jour</span></span><span> </span><span><span class="hljs-string">SemaineMonday</span></span><span>
</span></span>
Remarque: % A sortira le nom de la semaine anglaise, et la valeur par défaut est l'anglais. Si vous souhaitez que la sortie de la date et de la semaine soit en chinois, vous pouvez vous assurer que les paramètres de localisation de PHP sont corrects.
Si vous ne vous souciez que d'une pièce de date spécifique, comme si vous ne souhaitez sortir que l'année et le mois, vous pouvez utiliser:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%YAnnée%mlune"</span></span><span>, </span><span><span class="hljs-title function_ invoke__">time</span></span><span>());
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Résultat de sortie:
<span><span><span class="hljs-number">2025</span></span><span><span class="hljs-string">Année06lune</span></span><span>
</span></span>
Afin de rendre le format de date plus conforme aux exigences de localisation, vous pouvez utiliser la fonction setLocale () pour définir l'environnement régional. Par exemple, dans un environnement chinois, le format de date sera automatiquement converti en chinois:
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-title function_ invoke__">setlocale</span></span><span>(LC_TIME, </span><span><span class="hljs-string">'zh_CN.UTF-8'</span></span><span>); </span><span><span class="hljs-comment">// Configurer un environnement chinois</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strftime</span></span><span>(</span><span><span class="hljs-string">"%YAnnée%mlune%djour Semaine%A"</span></span><span>, </span><span><span class="hljs-title function_ invoke__">time</span></span><span>());
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Résultat de sortie (en supposant que le système prend en charge l'environnement chinois):
<span><span><span class="hljs-number">2025</span></span><span><span class="hljs-string">Année06lune14jour</span></span><span> </span><span><span class="hljs-string">Semaine六</span></span><span>
</span></span>
Prise en charge de la localisation : Dans certains environnements, la sortie de la fonction strftime () peut être liée au paramètre de localisation (paramètres régionaux). Par conséquent, vous devez vous assurer que le pack de langues correspondant est installé sur le serveur.
Compatibilité : strftime () est basée sur la bibliothèque de norme de langue C, de sorte que son comportement peut varier en fonction du système d'exploitation ou de la version PHP. Si vous rencontrez des problèmes d'incompatibilité, envisagez d'utiliser la fonction Date () ou d'autres bibliothèques tierces pour gérer le formatage de la date.
Considérations de performances : Dans les cas où des appels à haute fréquence à ce jour de fonctions de formatage sont nécessaires, il est recommandé de considérer le cache ou de réduire les opérations de localisation inutiles lors de l'optimisation.
Grâce à l'introduction de cet article, je crois que tout le monde a appris à utiliser la fonction Strftime () pour personnaliser la sortie du format de date dans PHP. Cette fonction fournit non seulement des méthodes de formatage de date et d'heure flexibles, mais s'adapte également à différents environnements régionaux via les paramètres de localisation, nous aidant à mieux gérer les besoins liés à la date et au temps. La maîtrise de l'utilisation de strftime () vous rendra plus pratique pendant le processus de développement.