PHP Konwertuj ciąg na datetime

PHP Konwertuj ciąg na datetime
W tym artykule nauczy Cię, jak konwertować prosty ciąg na format daty za pomocą różnych metod i technik PHP.

Podstawy

Aby przekonwertować ciąg na datę, użyjemy dwóch funkcji: strtotime () i data (). Możemy również użyć metody DATETIME :: CreateFromFormat.

Zaczniemy od kombinacji funkcji strtotime () i date ().

Funkcja php strtotime ()

Metoda PHP strtotime () pozwala przekonwertować format czasu czytania człowieka, aby unsex czasu.

Czas UNIX odnosi się do liczby sekund, które upłynęły od 1/1/1970 00:00:00.

Funkcja przyjmuje składnię, jak pokazano poniżej:

strtotime (string $ dateTime)

Funkcja bierze znacznik czasu jako argument i zwraca datę jako liczbę całkowitą, jeśli konwersja się powiodła. Funkcja zwraca również falę logiczną w sprawie awarii.

NOTATKA: Funkcja będzie interpretować różne formaty inaczej. Na przykład, jeśli używasz separatora jako cięcia, metoda przyjmie amerykańską datę i format terminu jako m/d/y. Jeśli jednak separator jest (-), stosuje się format europejski (D-M-y).

Aby pozostać po bezpiecznej stronie, użyj formatu ISO 8601 (Yyyy-MM-DD).

Dowiedz się więcej o formatach daty i godziny PHP w zasobach podanym poniżej:

https: // www.php.net/manual/en/dateTime.formaty.php

Spójrz na następujące przykłady, które pokazują, jak korzystać z funkcji strtotime ().

echo strtotime („teraz”), „\ n”; // <-- convert time now to unix
echo strtotime („następny piątek”), „\ n”;
echo strtotime („+7 tygodni”), „\ n”;
Echo strtotime („2022-06-06”), „\ n”;
echo strtotime („+10 godzin”), „\ n”;
?>

Powyższe przykłady przekształcają różne ciągi na ich odpowiednie znaczniki czasu UNIX.

Funkcja php data ()

Poniższa funkcja, na którą spojrzymy, to funkcja data (). Ta funkcja pobiera znacznik czasu UNIX i przekształca ją w lokalny format daty i godziny. Składnia funkcji można wyrazić jako:

data (format, znacznik czasu);

Akceptuje format daty i godziny oraz znacznik czasu. Po sformatowaniu funkcja odpowiednio zwraca datę i godzinę sformatowaną.

Na przykład przekonwertujmy określony znacznik czasu na datę i godzinę.

Echo data („D/M/Y H: i: S”, 1638092852), „\ n”;
?>

W powyższym przykładzie używamy formatu daty, aby przekonwertować określony znacznik czasu UNIX do daty/miesiąca/rok Godziny: Format minut sekund.

Uruchom powyższy kod i powinieneś uzyskać wyjście, jak pokazano poniżej:

$ php date_format.php
28/listopada/2021 11:47:32

Łączenie strtotime () i date ()

Aby przekonwertować określony ciąg do daty i formatu, możemy połączyć funkcję i datę strtotime (), jak już widzieliśmy.

Rozważ przykład pokazany poniżej:

$ timestamp = strTotime („+10 godzin”);
Echo Data („D/M/Y H: I: S”, $ Timestamp), „\ n”;
?>

Poniższy przykład używa funkcji strtotime () do konwersji określonego ciągu na znacznik czasu Unix.

Następnie używamy funkcji daty, aby przekonwertować znacznik czasu na określony format daty i godziny.

Metoda 2 - Użyj DATETIME :: CreateFromFormat ()

Inną metodą, której możemy użyć do utworzenia datetime z ciągu, jest dateTime :: createFromFormat (). Jest to wbudowana funkcja PHP dostępna w PHP 5.2 i wyżej. Zwraca obiekt DateTime reprezentujący datę i godzinę w określonym formacie.

Poniższy przykład pokazuje, jak go używać.

$ datenew = dateTime :: createFromformat („y-m-d”, „2022-06-06”);
echo $ datenew-> format („y-m-d”), „\ n”;
?>

Powyższy kod powinien zwrócić datę.

Wniosek

Ten przewodnik nauczył cię, jak konwertować określony ciąg na format daty i godziny przy użyciu wbudowanych metod PHP.

Dziękuje za przeczytanie!