Heim > Artikel > Backend-Entwicklung > Wie füge ich in PHP eine x-Stundenzahl zu einem Datum hinzu?
Fügen Sie einem Datum eine „x“-Anzahl von Stunden hinzu
In PHP ist es einfach, das aktuelle Datum und die aktuelle Uhrzeit mithilfe des Datums zu ermitteln( ) Funktion. Es kann jedoch vorkommen, dass Sie diesen Zeitstempel ändern müssen, indem Sie eine bestimmte Anzahl von Stunden hinzufügen.
Lassen Sie uns ein bestimmtes Szenario untersuchen. Angenommen, Sie haben eine Variable $now, die das aktuelle Datum und die aktuelle Uhrzeit im Format „Y-m-d H:m:s“ enthält, wobei $hours eine Variable ist, die eine Anzahl von Stunden zwischen 24 und 800 darstellt. Die Aufgabe besteht darin, eine neue Variable $ zu erstellen new_time, das $now plus $hours entspricht.
Um dies zu erreichen, können Sie die Funktion strtotime() verwenden. Diese Funktion nimmt eine Datums- oder Zeitzeichenfolge und gibt den entsprechenden Unix-Zeitstempel zurück, der die Anzahl der Sekunden seit dem 1. Januar 1970 UTC ist.
Durch die Kombination von date() und strtotime() können Sie den gewünschten Zeitstempel erstellen wie folgt:
<code class="php">$new_time = date("Y-m-d H:i:s", strtotime("+$hours hours", strtotime($now)));</code>
Dieser Code addiert den Wert von $hours in Stunden zum aktuellen Zeitstempel, der in $now gespeichert ist. Das Ergebnis wird dann mit date() formatiert, um dem angegebenen Datums- und Uhrzeitformat zu entsprechen.
Denken Sie daran, dass Sie doppelte Anführungszeichen anstelle von einfachen Anführungszeichen verwenden müssen, wenn Sie Variablen in die an strtotime() übergebene Zeichenfolge einschließen müssen und schließen Sie die Variablennamen in geschweifte Klammern ein.
Wenn $now beispielsweise eine Variable ist, die den aktuellen Zeitstempel enthält, würden Sie schreiben:
<code class="php">$new_time = date("Y-m-d H:i:s", strtotime("+{$hours} hours"));</code>
Es wird jedoch empfohlen, a zu verwenden Robustere Methode zur Variablensubstitution, wie zum Beispiel:
<code class="php">$new_time = date("Y-m-d H:i:s", strtotime(sprintf("+%d hours", $hours)));</code>
Diese Methode stellt sicher, dass die Variableninterpolation während der Zeichenfolgenverkettung erfolgt, wodurch potenzielle Sicherheitslücken bei der Codeeinschleusung verhindert werden.
Das obige ist der detaillierte Inhalt vonWie füge ich in PHP eine x-Stundenzahl zu einem Datum hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!