In dieser misslichen Lage versucht ein Benutzer, ein DateTime-Objekt unter Berücksichtigung des Standardgebietsschemas seines Systems zu formatieren. Derzeit verwendet der Benutzer die Methode format(), diese berücksichtigt jedoch nicht die gewünschte Sprachübersetzung.
Sie haben versucht, die Funktion Locale::getDefault() zu integrieren, um die entsprechende Gebietsschemaeinstellung abzurufen. Sie konnten jedoch keine Möglichkeit finden, DateTime::format anzuweisen, diese Einstellung zu verwenden.
Die empfohlene Lösung besteht darin, die Intl-Erweiterung zum Formatieren des Datums zu verwenden. Diese Erweiterung richtet sich grundsätzlich nach dem gewählten Gebietsschema. Alternativ können Benutzer dieses Verhalten mit IntlDateFormatter::setPattern() überschreiben.
Hier ist ein Codeausschnitt, der ein benutzerdefiniertes Muster für das gewünschte Ausgabeformat demonstriert:
$dt = new DateTime; $formatter = new IntlDateFormatter('de_DE', IntlDateFormatter::SHORT, IntlDateFormatter::SHORT); $formatter->setPattern('E d.M.yyyy'); echo $formatter->format($dt);
Dieser Code gibt das Datum aus im gewünschten Format unter Berücksichtigung des deutschen Gebietsschemas des Systems (de_DE). Beispielsweise kann als heutiges Datum „Di. 4.6.2013“ angezeigt werden.
Das obige ist der detaillierte Inhalt vonWie kann ich ein DateTime-Objekt formatieren, um das Standardgebietsschema des Systems zu berücksichtigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!