Szukaj…


getTimestamp

getTimeStemp to uniksowa reprezentacja obiektu datetime.

$date = new DateTime();
echo $date->getTimestamp(); 

spowoduje to wyświetlenie liczby całkowitej wskazującej sekundy, które upłynęły od 00:00:00 UTC, czwartek, 1 stycznia 1970 r.

ustawić datę

setDate ustawia datę w obiekcie DateTime.

$date = new DateTime();
$date->setDate(2016, 7, 25);

ten przykład ustawia datę na dwudziesty piąty lipca 2015 r., przyniesie następujący wynik:

2016-07-25 17:52:15.819442

Dodaj lub odejmij przedziały dat

Możemy użyć klasy DateInterval, aby dodać lub odjąć jakiś interwał w obiekcie DateTime.

Zobacz poniższy przykład, w którym dodajemy odstęp 7 dni i drukujemy komunikat na ekranie:

$now = new DateTime();// empty argument returns the current date
$interval = new DateInterval('P7D');//this objet represents a 7 days interval
$lastDay = $now->add($interval); //this will return a DateTime object
$formatedLastDay = $lastDay->format('Y-m-d');//this method format the DateTime object and returns a String
echo "Samara says: Seven Days. You'll be happy on $formatedLastDay.";

Spowoduje to wygenerowanie (uruchomione 1 sierpnia 2016 r.):

Samara mówi: siedem dni. Będziesz szczęśliwy 08.08.2016.

Możemy użyć metody podrzędnej w podobny sposób, aby odjąć daty

$now->sub($interval);
echo "Samara says: Seven Days. You were happy last on $formatedLastDay.";

Spowoduje to wygenerowanie (uruchomione 1 sierpnia 2016 r.):

Samara mówi: siedem dni. Ostatni raz byłeś szczęśliwy 25.07.2016.

Utwórz DateTime z niestandardowego formatu

PHP jest w stanie przeanalizować wiele formatów dat . Jeśli chcesz przeanalizować niestandardowy format lub chcesz, aby Twój kod wyraźnie DateTime::createFromFormat format, który chcesz zastosować, możesz użyć statycznej metody DateTime::createFromFormat :

Styl obiektowy

$format = "Y,m,d";
$time = "2009,2,26";
$date = DateTime::createFromFormat($format, $time);

Styl proceduralny

$format = "Y,m,d";
$time = "2009,2,26";
$date = date_create_from_format($format, $time);

Drukowanie daty i godziny

PHP 4+ dostarcza metodę, format, który konwertuje obiekt DateTime na ciąg o pożądanym formacie. Według PHP Manual jest to funkcja obiektowa:

public string DateTime::format ( string $format )

Funkcja date () przyjmuje jeden parametr - format, który jest łańcuchem

Format

Format jest ciągiem znaków i używa pojedynczych znaków do zdefiniowania formatu:

  • Y : czterocyfrowa reprezentacja roku (np .: 2016)
  • y : dwucyfrowa reprezentacja roku (np .: 16)
  • m : miesiąc, jako liczba (od 01 do 12)
  • M : miesiąc, jako trzy litery (styczeń, luty, marzec itp.)
  • j : dzień miesiąca, bez zer wiodących (od 1 do 31)
  • D : dzień tygodnia, jako trzy litery (pon., Wt., Śr. Itp.)
  • h : godzina (format 12-godzinny) (od 01 do 12)
  • H : godzina (format 24-godzinny) (od 00 do 23)
  • Odp . : AM albo PM
  • i : minuta, z wiodącymi zerami (od 00 do 59)
  • s : sekunda, z wiodącymi zerami (od 00 do 59)
  • Pełna lista znajduje się tutaj

Stosowanie

Znaków tych można używać w różnych kombinacjach, aby wyświetlać czasy w praktycznie dowolnym formacie. Oto kilka przykładów:

$date = new DateTime('2000-05-26T13:30:20'); /* Friday, May 26, 2000 at 1:30:20 PM */

$date->format("H:i");
/* Returns 13:30 */

$date->format("H i s");
/* Returns 13 30 20 */

$date->format("h:i:s A");
/* Returns 01:30:20 PM */

$date->format("j/m/Y");
/* Returns 26/05/2000 */

$date->format("D, M j 'y - h:i A");
/* Returns Fri, May 26 '00 - 01:30 PM */

Proceduralny

Format proceduralny jest podobny:

Obiektowy

$date->format($format)

Odpowiednik proceduralny

date_format($date, $format)

Utwórz niezmienną wersję DateTime z Mutable wcześniejszej wersji PHP 5.6

Aby utworzyć \DateTimeImmutable w PHP 5.6+, użyj:

\DateTimeImmutable::createFromMutable($concrete);

W wersjach wcześniejszych niż PHP 5.6 można używać:

\DateTimeImmutable::createFromFormat(\DateTime::ISO8601, $mutable->format(\DateTime::ISO8601), $mutable->getTimezone());


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow