Aktueller Standort: Startseite> Neueste Artikel> setLocale () wie kann ich das Datumsformat mit lc_time festlegen? Schnell lokalisierte Anzeige implementieren

setLocale () wie kann ich das Datumsformat mit lc_time festlegen? Schnell lokalisierte Anzeige implementieren

gitbox 2025-09-04

In der PHP -Entwicklung werden die Funktion SetLocale () und die LC_Time -Konstante häufig verwendet, um die lokalisierte Anzeige von Daten und Zeiten zu steuern. Durch das Festlegen des entsprechenden Gebietsschemas kann das Programm Datums- und Uhrzeitformate entsprechend unterschiedlichen Sprachen und regionalen Gewohnheiten korrekt anzeigen. In diesem Artikel wird detailliert vorgestellt, wie SetLocale () mit LC_Time verwendet wird, um das Datumsformat festzulegen und schnell einen lokalisierten Display -Effekt zu erzielen.

1. Überblick über die Funktion setLocale ()

Mit der Funktion "setLocale ()) wird das Gebietsschema des aktuellen Skripts festgelegt, das die Anzeige von Datum, Uhrzeit, Zahlenformat und anderen Aspekten im Programm beeinflussen kann. Diese Funktion akzeptiert zwei Parameter:

  • Kategorie : Setzen Sie verschiedene Arten von Lokalisierungsinformationen. Zu den allgemeinen gehören:

    • LC_ALL : Setzen Sie alle Kategorien.

    • LC_TIME : Legt die Lokalisierung im Zusammenhang mit Uhrzeit und Datum fest.

    • LC_NUMERIC : Setzen Sie das digitale Format.

    • LC_MONETARY : Setzen Sie das Währungsformat.

    • LC_COLLATE : Set String -Sortierregeln.

  • Gebietsschema : Eine Kennung, die die Region darstellt. Das Format ist "Language_country" oder "Language_country.Coding", zum Beispiel: "Zh_cn.utf-8" Repräsentiert Chinesisch (China, UTF-8-Codierung).

Nach der Festlegung der entsprechenden Bereichsinformationen über SetLocale () verwendet PHP die Bereichsinformationen, um die entsprechende Datum und die Uhrzeitanzeige zu verarbeiten.

2. Setzen Sie das Datumsformat mit LC_TIME

Die LC_Time -Konstante wird verwendet, um die Lokalisierungseinstellungen in Bezug auf Uhrzeit und Datum anzugeben. Dadurch können Sie das Datumsformat, den Namen des Monats, den Wochentag und vieles mehr steuern. Um lokalisierte Datumsformate zu implementieren, müssen Sie normalerweise die Funktion setLocale () mit strftime () verwenden.

Beispiel:

 <span><span><span class="hljs-comment">// Als chinesische Region festgelegt(China)</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">// Erhalten Sie das aktuelle Datum und die Ausgabe in lokalisiertem Format</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">'%A, %d %B %Y'</span></span><span>);  </span><span><span class="hljs-comment">// Ausgabe:Mittwoch, 26 Juni 2025</span></span><span>
</span></span>

Im obigen Beispiel legt SetLocale () die Region des aktuellen Skripts auf China (vereinfachtes Chinesisch) fest. Die Funktion strftime () gibt das Datum im chinesischen Format gemäß der aktuellen Region ein.

3.. Gemeinsame Datumsformate

Mit Strftime () können Sie flexibel angeben, wie Daten angezeigt werden. Hier sind einige gemeinsame Formate:

  • %A : Vollständiger Name der Woche (zum Beispiel: Montag, Dienstag usw.)

  • %A : Ein kurzer Name des Wochentags (zum Beispiel: Montag, Dienstag usw.)

  • %B : Vollständiger Monat Name (zum Beispiel: Januar, Februar usw.)

  • %B : Ein kurzer Monat Name (zum Beispiel: zuerst, zweitens usw.)

  • %d : Datum im Monat (01 bis 31)

  • %Y : vierstelliges Jahr (zum Beispiel: 2025)

  • %y : zweistelliges Jahr (Beispiel: 25)

  • %H : 24-Stunden-Stunden (00 bis 23)

  • %M : Minuten (00 bis 59)

  • %S : Sekunden (00 bis 59)

Beispiel:

 <span><span><span class="hljs-comment">// Als englischsprachige Region festgelegt</span></span><span>
</span><span><span class="hljs-title function_ invoke__">setlocale</span></span><span>(LC_TIME, </span><span><span class="hljs-string">'en_US.UTF-8'</span></span><span>);

</span><span><span class="hljs-comment">// Erhalten Sie das aktuelle Datum und die Ausgabe in lokalisiertem Format</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">'%A, %d %B %Y'</span></span><span>);  </span><span><span class="hljs-comment">// Ausgabe:Wednesday, 26 June 2025</span></span><span>
</span></span>

Mit unterschiedlichen Gebietsschaleneinstellungen und Datumsformatierern können Sie die Datumsanzeige in verschiedenen Sprachen und Regionen problemlos erkennen.

4. Häufig gestellte Fragen und Vorsichtsmaßnahmen

  • Support -Support -Probleme : Nicht alle Server unterstützen alle regionalen Kennungen. Bei der Verwendung von setLocale () können Sie zuerst die unterstützten Bereiche des Servers über den Befehl "A) überprüfen. Wenn die angegebene Region Identifier nicht vorhanden ist, wird SetLocale () falsch zurückgegeben, sodass die Region -Kennung mit Vorsicht ausgewählt werden sollte.

  • Problemzoneneinstellungsproblem : SetLocale () steuert nur das Lokalisierungsformat der Region, und die Funktion date_default_timezone_set () ist erforderlich, um Zeitzonen festzulegen. Wenn Sie die Zeit entsprechend der spezifischen Zeitzone anzeigen müssen, können Sie sie mit DATE_DEFAULT_TIMEZONE_SET () verwenden.

 <span><span><span class="hljs-comment">// Legen Sie die Zeitzone fest</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);

</span><span><span class="hljs-comment">// Als chinesische Region festgelegt</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">// Ausgabe当前时间</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">'%Y-%m-%d %H:%M:%S'</span></span><span>);  </span><span><span class="hljs-comment">// Ausgabe:2025-06-26 10:30:45</span></span><span>
</span></span>
  • Codierungsprobleme : Wenn Sie nicht-Latin-Zeichen wie Chinesen unterstützen müssen, wird empfohlen, die UTF-8-Codierung zu verwenden. Wenn Sie beim Einstellen von Gebietsschema auf mannte Codeprobleme stoßen, können Sie versuchen, das entsprechende Sprachpaket auf dem Server zu installieren und sicherzustellen, dass die Codierung konsistent ist.

5. Schlussfolgerung

Mit SetLocale () mit LC_Time Constant kann PHP eine lokalisierte Anzeige von Daten und Uhrzeiten realisieren. Durch die Auswahl verschiedener Regionskennungen können Entwickler das Datumsformat automatisch an den geografischen Standort des Benutzers anpassen, um eine freundlichere Benutzererfahrung zu bieten. Achten Sie darauf, ob der Server die entsprechende Flächenkennung unterstützt, um die Konsistenz der Codierung zu gewährleisten, um zu vermeiden, dass Probleme wie verstümmelter Code angezeigt werden.

Mit den Beispielen und Anweisungen in diesem Artikel sollten Sie in der Lage sein, die Einstellungen für lokalisierte Datumsformat zu implementieren und Ihrer Anwendung mehrsprachige Unterstützung hinzuzufügen.