In PHP ist Verarbeitungszeit und Daten eine häufige Voraussetzung für die Entwicklung, insbesondere in Szenarien wie Protokollierung, Datenanzeige, Dateibenennung usw. Die Formatierungszeit ist häufig eine Aufgabe, die nicht ignoriert werden kann. PHP bietet viele Funktionen, um Entwicklern zu helfen, Zeit zu formatieren. Die Kombination von lokalen () und strftime () -Funktionen kann leicht unterschiedliche Zeitformatierungsanforderungen erfüllen.
LocalTime () ist eine Funktion, die zur lokalen Zeit verwendet wird. Es gibt ein Array zurück, das die verschiedenen Komponenten der lokalen Zeit enthält, einschließlich Jahr, Monat, Tag, Stunde, Minute, Sekunden usw. Die von dieser Funktion zurückgegebenen Zeitinformationen basieren auf dem aktuellen Zeitstempel, und die lokalen Zeitinformationen, die dem angegebenen Zeitstempel entsprechen, können durch Angabe von Parametern erhalten werden.
<span><span><span class="hljs-variable">$time</span></span><span> = </span><span><span class="hljs-title function_ invoke__">localtime</span></span><span>();
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$time</span></span><span>);
</span></span>
Die zurückgegebene Array -Struktur lautet wie folgt:
<span><span>Array
(
[</span><span><span class="hljs-meta">0</span></span><span>] => Zweite
[</span><span><span class="hljs-meta">1</span></span><span>] => Minute
[</span><span><span class="hljs-meta">2</span></span><span>] => Stunde
[</span><span><span class="hljs-meta">3</span></span><span>] => Welcher Wochentag (</span><span><span class="hljs-number">0</span></span><span>=Sonntag, </span><span><span class="hljs-number">1</span></span><span>=Montag...)
[</span><span><span class="hljs-meta">4</span></span><span>] => Monat (</span><span><span class="hljs-number">0</span></span><span>=</span><span><span class="hljs-number">1</span></span><span>Mond, </span><span><span class="hljs-number">11</span></span><span>=</span><span><span class="hljs-number">12</span></span><span>Mond)
[</span><span><span class="hljs-meta">5</span></span><span>] => Jahre (aus</span><span><span class="hljs-number">1900</span></span><span>Jahre beginnen)
[</span><span><span class="hljs-meta">6</span></span><span>] => Welchen Tag des Jahres (</span><span><span class="hljs-number">1</span></span><span>ankommen</span><span><span class="hljs-number">366</span></span><span>)
[</span><span><span class="hljs-meta">7</span></span><span>] => Sommerzeitzeichen für Tageslicht (</span><span><span class="hljs-number">0</span></span><span>=NEIN, </span><span><span class="hljs-number">1</span></span><span>=Ja)
)
</span></span>
Durch den Zugriff auf dieses Array können wir Zeitinformationen für verschiedene Teile, wie z. B. Stunden, Minuten, Monate usw., genau erhalten, usw.
Die Funktion Strftime () wird verwendet, um die Zeit gemäß der angegebenen Formatzeichenfolge zu formatieren. Es akzeptiert zwei Parameter, der erste ist die Formatzeichenfolge und der zweite ist ein optionaler Zeitstempelparameter, der die aktuelle Zeit standardmäßig standhält, wenn sie nicht angegeben sind.
<span><span><span class="hljs-variable">$format</span></span><span> = </span><span><span class="hljs-string">"%Y-%m-%d %H:%M:%S"</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-variable">$format</span></span><span>);
</span></span>
Zu den häufig verwendeten formatierten Zeichen gehören:
%Y : vierstelliges Jahr (zum Beispiel: 2025)
%M : zweistelliger Monat (01 bis 12)
%d : Datum der zweistelligen Ziffern (01 bis 31)
%H : zweistellige Stunden (00 bis 23)
%M : Doppelte Minuten (00 bis 59)
%S : Doppelte Sekunden (00 bis 59)
Auf diese Weise können wir Zeit in das Format umwandeln, das wir brauchen.
Durch die Kombination von LocalTime () und Strftime () -Funktionen können wir flexible und vielfältige Zeitformatierung implementieren. Verwenden Sie zunächst LocalTime (), um das Array der aktuellen lokalen Zeit zu erhalten, das Array in einen Zeitstempel umzuwandeln und die Ausgabe zu formatieren.
<span><span><span class="hljs-comment">// Erhalten Sie lokale Zeitinformationen für die aktuelle Zeit</span></span><span>
</span><span><span class="hljs-variable">$localTime</span></span><span> = </span><span><span class="hljs-title function_ invoke__">localtime</span></span><span>();
</span><span><span class="hljs-comment">// Konstruieren Sie einen Zeitstempel</span></span><span>
</span><span><span class="hljs-variable">$timestamp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">mktime</span></span><span>(
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">2</span></span><span>], // Stunde
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">1</span></span><span>], // Minute
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">0</span></span><span>], // Zweite
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">4</span></span><span>] + </span><span><span class="hljs-number">1</span></span><span>, // Monat(Müssen hinzufügen</span><span><span class="hljs-number">1</span></span><span>,因为数组aus</span><span><span class="hljs-number">0</span></span><span>Start)
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">3</span></span><span>] + </span><span><span class="hljs-number">1</span></span><span>, // Datum(同理Müssen hinzufügen</span><span><span class="hljs-number">1</span></span><span>)
</span><span><span class="hljs-variable">$localTime</span></span><span>[</span><span><span class="hljs-number">5</span></span><span>] + </span><span><span class="hljs-number">1900</span></span><span> // Jahre(Müssen hinzufügen</span><span><span class="hljs-number">1900</span></span><span>)
);
</span><span><span class="hljs-comment">// verwenden strftime Formatzeit</span></span><span>
</span><span><span class="hljs-variable">$format</span></span><span> = </span><span><span class="hljs-string">"%Y-%m-%d %H:%M:%S"</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-variable">$format</span></span><span>, </span><span><span class="hljs-variable">$timestamp</span></span><span>);
</span></span>
Der obige Code erhält zunächst die aktuellen lokalen Zeitinformationen über LocalTime () , erstellt dann einen gültigen Zeitstempel und verwendet schließlich Strftime () , um die Zeit zu formatieren und auszugeben.
Log -Datei -Zeitstempel:
Bei Protokollierungssystemen müssen wir oft Zeitstempel zu jedem Protokoll hinzufügen, und die Formatanforderungen sind sehr hoch. Mithilfe von lokalzeit () und strftime () -Funktionen können Zeitstempel in mehreren Zeitformaten entsprechend den Anforderungen erzeugt werden.
<span><span><span class="hljs-variable">$logTime</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-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Protokollzeit: <span class="hljs-subst">$logTime</span></span></span><span>\n";
</span></span>
Custom Datum Format:
In einigen Anwendungsszenarien müssen Datumsformate möglicherweise entsprechend den Anforderungen der Region oder der Benutzer angepasst werden. Mit Strftime () können verschiedene Datumsformate leicht implementiert werden, wie "13. Juli 2025" oder "2025-07-13 14:35:20".
<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">"%YJahr%mMond%dTag"</span></span><span>, </span><span><span class="hljs-variable">$timestamp</span></span><span>); </span><span><span class="hljs-comment">// Ausgabe "2025Jahr07Mond13Tag"</span></span><span>
</span></span>
Generieren Sie dynamische Dateinamen:
In der Dateibenennung sorgt die Verwendung von Zeitstempeln als Teil des Dateinamens für die Einzigartigkeit des Dateinamens. Zum Beispiel: log_2025-07-13_14-35-20.txt .
<span><span><span class="hljs-variable">$filename</span></span><span> = </span><span><span class="hljs-string">"Tag志_"</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-variable">$timestamp</span></span><span>) . </span><span><span class="hljs-string">".txt"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Dateiname: <span class="hljs-subst">$filename</span></span></span><span>\n";
</span></span>
Durch die Kombination von LocalTime () und Strftime () -Funktionen können PHP -Entwickler die Zeit und die Daten flexibler verarbeiten und zeitliche Zeichenfolgen generieren, die bestimmten Formaten entsprechen. Unabhängig davon, ob es sich um Protokollierung, Dateibenennung oder dynamische Anzeige von Daten handelt, verbessert die Verwendung der Verwendung dieser beiden Funktionen die Entwicklungseffizienz und die Lesbarkeit der Code erheblich.