Klasa PHP DATINTERVAL oblicza różnicę między dwoma obiektami daty/godziny. Czasami wymaga znalezienia różnicy między dwa dni, miesiące, lata, godziny, minuty i sekundy do celów programowania. Obiekt tej klasy przechowuje stałą ilość czasu, który można odczytać za pomocą funkcji format () przy użyciu parametrów różnych formatów. W tym samouczku pokazano różne zastosowania klasy dateInterval w PHP.
Różne parametry formatu funkcji Format ()
Cele różnych znaków formatu zastosowanych w funkcji Format () zostały opisane w tej części samouczka.
Formatowanie postaci | Zamiar |
%D | Wydrukuje dzień daty bez prowadzenia zero Przykład: 1, 2, 30 itp. |
%D | Wydrukuje dzień daty z wiodącym zerem Przykład: 2, 05, 30 itd. |
%M | Wydrukuje numer miesiąca daty bez wiodącego zera Przykład: 1, 6, 12 itp. |
%M | Wydrukuje numer miesiąca daty z wiodącym zero Przykład: 01, 06, 12 itp. |
%y | Drukuje 2-cyfrowy rok Przykład: 21, 22, 23 itp. |
%Y | Wydrukuje 4-cyfrowy rok Przykład: 2021, 2022, 2023 itp. |
%H | Wydrukuje godzinę bez prowadzenia zeru Przykład: 1, 5, 11 itd. |
%H | Wydrukuje godzinę z zero Przykład: 01, 05, 11 itd. |
%I | Wydrukuje minutę bez prowadzenia zero Przykład: 1, 9, 59 itp. |
%I | Wydrukuje minutę z zerem zerowym Przykład: 01, 05, 25 itp. |
%S | Drukuje drugie bez prowadzenia zero Przykład: 1, 9, 59 itp. |
%S | Wydrukuje drugie z zero Przykład: 01, 09, 59 itp. |
%F | Wydrukuje mikrosekund bez prowadzenia zero Przykład: 7845, 562312, 235634 itp. |
%F | Wydrukuje mikrosekundę z 6 cyframi i prowadząc zero Przykład: 007845, 062312, 235634 itp. |
Zastosowania różnych metod klasy dateInterval są omówione w następnej części tego samouczka.
Przykład 1: Korzystanie z klas DateInterval na dzień, miesiąc i rok
Utwórz plik PHP z następującym skryptem, który pokazuje użycie definiowania różnych wartości interwałowych, używając klasy DateInterval. Interwał musi rozpocząć się od postaci „P”. Postać „y” jest używany w odstępie roku, „M” jest używany w odstępie miesiąca, a „D” jest używany do odstępu dziennego. W skrypcie pierwsza klasa dateInterval ustanowi 10 dni odstępów, druga klasa dateInterval będzie ustanowiła odstępy 5 miesięcy i 10 dni, a trzecia klasa dateInterval ustanowi 2 lata, 5 miesięcy i 10 dni odstępów.
// Ustaw interwał za dni
$ ival = new DateInterval („p10d”);
// Wydrukuj wartość przedziału
echo „interwał to”, $ ival-> format ('%d dni.')."
";
// Ustaw interwał w miesiącach i dni
$ ival = new DateInterval („p5m10d”);
// Wydrukuj wartość przedziału w miesiącach i dniach
echo „interwał to”, $ ival-> format („ %m miesięcy i %d dni.') ”
";
// Ustaw interwał w latach, miesiącach i dniach
$ ival = new DateInterval („p2Y5M10D”);
// Wydrukuj wartość przedziału w latach, miesiącach i dniach z wiodącymi zerami
echo „interwał to”, $ ival-> format („ %y lata, %m miesięcy i %d dni.') ”
";
// Wydrukuj wartość przedziału w latach, miesiącach i dniach bez wiodących zer
echo „interwał to”, $ ival-> format („ %y lata, %m miesięcy i %d dni.') ”
";
?>
Następujące dane wyjściowe pojawią się po wykonaniu poprzedniego skryptu:
Przykład 2: Korzystanie z klasy dateInterval z funkcją DATE_INTERVAL_FORMAT ()
Funkcja DATE_INTERVAL_FORMAT () drukuje wartość przedziału daty z ciągiem formatowym. Ta funkcja przyjmuje obiekt przedziałowy w pierwszym argumencie i ciąg formatu w drugim argumencie. Utwórz plik PHP z następującym skryptem, w którym wyświetlono użycie funkcji date_interval_format ():
// Ustaw interwał w latach, miesiącach i dniach
$ ival = new DateInterval ('p10Y6M15D');
// Ustaw format na kilka dni
$ format = "%d";
// Wydrukuj wartość przedziału za dni
echo „interwał to”.date_interval_format ($ ival, $ format)."Dni.
";
// Ustaw format na dni i miesiące
$ format = " %m miesięcy i %dni.";
// Wydrukuj wartość przedziału w miesiącach i dniach
echo „interwał to”.date_interval_format ($ ival, $ format)."
";
// Ustaw format na kilka dni
$ format = " %y lata, %m miesięcy i %dni.";
// Wydrukuj wartość przedziału w latach, miesiącach i dniach
echo „interwał to”.date_interval_format ($ ival, $ format)."
";
?>
Następujące dane wyjściowe pojawią się po wykonaniu poprzedniego skryptu:
Przykład 3: Korzystanie z klas DateInterval dla godziny, minuty i sekundy
Znak „t” jest używany po postaci „p” do ustawiania interwału na czas. Utwórz plik PHP z następującym skryptem, w którym odstęp czasowy jest ustawiany przy użyciu klasy DateInterval:
// Ustaw interwał w kilka sekund
$ ival = new DateInterval („PT30S”);
// Ustaw formatowanie
$ format = "%s sekund.";
// Wydrukuj wartość przedziału w sekundach
echo „interwał to”. date_interval_format ($ ival, $ format). "
";
// Ustaw interwał w kilka sekund
$ ival = new DateInterval („PT15M30S”);
// Ustaw formatowanie
$ format = " %i minuty i %s sekund.";
// Wydrukuj wartość przedziału w minutach i sekundach
echo „interwał to”. date_interval_format ($ ival, $ format). "
";
// Ustaw interwał w kilka sekund
$ ival = new DateInterval („PT5H15M30S”);
// Ustaw formatowanie
$ format = " %h godzin, %i minuty i %s sekund.";
// Wydrukuj wartość przedziału w godzinach, minutach i sekundach
echo „interwał to”. date_interval_format ($ ival, $ format). "
";
?>
Następujące dane wyjściowe pojawią się po wykonaniu poprzedniego skryptu:
Przykład 4: Korzystanie z klas DateInterval z funkcją CreateFromDatestring ()
Funkcja CreateFromDAstring () służy do ustawiania daty i przedziału czasu na różne sposoby. Utwórz plik PHP z następującym skryptem, w którym przedział daty i godziny został ustawiony na różne sposoby za pomocą funkcji CreateFromDiString ():
// Ustaw interwał za dni
$ ival = dateInterval :: createFromDatestring ('20 dni ');
echo „interwał to”, $ ival-> format („%d dni”), ”
";
// Ustaw interwał w tygodnie
$ ival = dateInterval :: createFromDatestring („4 tygodnie”);
echo „interwał to”, $ ival-> format („%d dni”), ”
";
// Ustaw interwał w miesiącach
$ ival = dateInterval :: createFromDateString („3 miesiące”);
echo „interwał to”, $ ival-> format („%m miesięcy”), ”
";
// Ustaw interwał w latach i dni
$ ival = dateInterval :: createFromDatestring („5 rok + 15 dni”);
echo „interwał to”, $ ival-> format („ %y lata %d dni”), ”
";
// Ustaw interwał w tygodnie, dni, godziny i minuty według sumowania
$ ival = dateInterval :: create fromDateString („2 tygodnie + 15 dni + 24 godziny + 60 minut”);
echo „interwał to”, $ ival-> format („ %d dni, %h godzin i %i minuty”), ”
";
// Ustaw interwał w ciągu dni przez odejmowanie
$ ival = dateInterval :: createFromDateString ('30 dni - 15 dni);
echo „interwał to”, $ ival-> format („%d dni”), ”
";
?>
Następujące dane wyjściowe pojawią się po wykonaniu poprzedniego skryptu:
Wniosek
W tym samouczku pokazano różne sposoby ustawienia przedziału daty i czasu za pomocą wartości ciągu w momencie tworzenia obiektu klasy dateInterval lub za pomocą createFromDAster (). Zastosowania klasy dateInterval zostały omówione dla nowych użytkowników PHP, aby lepiej zrozumieć.