In PHP ist die Zeit in der Entwicklung eine sehr häufige Voraussetzung für die Entwicklung. GetTimeOfday () und Date () -Funktionen sind gemeinsame Funktionen, die zur Zeit verwendet werden, aber ihre Zweck- und Rückgabergebnisse sind unterschiedlich. In diesem Artikel wird erläutert, wie GetTimeofday () und Datum () kombiniert werden, um Zeitzeichenfolgen mit benutzerdefinierten Formaten zu erhalten.
Die Funktion GetTimeofday () gibt die detaillierten Informationen der aktuellen Zeit zurück, einschließlich der Anzahl der Sekunden und der Mikrosekunden. Sein Rückgabewert ist ein assoziatives Array, und die gemeinsamen Felder sind wie folgt:
Sec : Anzahl der Sekunden seit der Unix-Ära (1970-01-01 00:00:00 UTC)
USEC : Die Anzahl der Mikrosekunden in der aktuellen Sekunde
Beispiel:
<?php
$time = gettimeofday();
print_r($time);
?>
Die Ausgabe ist ähnlich:
Array
(
[sec] => 1621766783
[usec] => 123456
[minuteswest] => 480
[dsttime] => 0
)
Date () ist die Hauptfunktion für die Formatierungszeit in PHP. Es empfängt zwei Parameter:
Formatzeichenfolge (wie YMD H: i: s )
Optionales Zeitstempel (Sekunden)
Beispiel:
<?php
echo date('Y-m-d H:i:s'); // Ausgabestromzeit,Zum Beispiel 2021-05-23 15:19:43
?>
Date () kann nur Sekunden verarbeiten und können keine Mikrosekunden anzeigen. Sie können Mikrosesekunden über GetTimeOfday () erhalten und sie dann mit der Anzahl der bis datum () formatierten Sekunden -Sekunden mit Mikrosekunden kombinieren.
Beispielcode:
<?php
$time = gettimeofday();
$seconds = $time['sec'];
$microseconds = $time['usec'];
// Format des zweiten Teils
$formatted_time = date('Y-m-d H:i:s', $seconds);
// Mikrosekunden -Teile spleißen,Formatiert wie6Bisschen,Unzureichende Entschädigung0
$micro_str = str_pad($microseconds, 6, '0', STR_PAD_LEFT);
// Letztes Mal String,Format wie:2021-05-23 15:19:43.123456
echo $formatted_time . '.' . $micro_str;
?>
Um die mehrfache Verwendung im Projekt zu erleichtern, kann der obige Code in eine Funktion eingekapselt werden:
<?php
function getFormattedMicrotime($format = 'Y-m-d H:i:s') {
$time = gettimeofday();
$seconds = $time['sec'];
$microseconds = $time['usec'];
$formatted_time = date($format, $seconds);
$micro_str = str_pad($microseconds, 6, '0', STR_PAD_LEFT);
return $formatted_time . '.' . $micro_str;
}
// Beispiel für die Nutzung
echo getFormattedMicrotime(); // Standardformat
echo "\n";
echo getFormattedMicrotime('Y/m/d H:i:s'); // Benutzerdefiniertes Format
?>
In diesem Beispiel können Sie GetTimeofday () und Date () in PHP problemlos kombinieren, um eine benutzerdefinierte Formatzeit mit Mikrosekunden zu erzielen. Dies kann den Bedürfnissen einer raffinierteren Zeit erfüllen, insbesondere für Protokollierung, Leistungsüberwachung und andere Szenarien.
Um mehr über die Verwendung von PHP-Zeitfunktionen zu erfahren, können Sie sich auf Gitbox.net/Php-date-Funktion beziehen.