Ngày PHP so với DateTime

Tóm lược. trong hướng dẫn này, bạn sẽ học cách làm việc với ngày và giờ theo cách hướng đối tượng

Giới thiệu về lớp DateTime trong PHP

PHP cung cấp một tập hợp các lớp ngày và giờ cho phép bạn làm việc với ngày và giờ theo cách hướng đối tượng

Để tạo một đối tượng ngày và giờ mới, bạn sử dụng lớp

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7. Ví dụ

$datetime = new DateTime(); var_dump($datetime);

Code language: PHP (php)

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)

Đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7 đại diện cho ngày và giờ hiện tại trong múi giờ được chỉ định trong tệp cấu hình PHP (

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
9)

Để đặt múi giờ mới, bạn tạo một đối tượng

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
0 mới và truyền nó cho phương thức

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
1 của đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)

Trong ví dụ này, chúng tôi tạo một đối tượng

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
0 mới và đặt nó thành

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
4. Để nhận các múi giờ hợp lệ được hỗ trợ bởi PHP, hãy xem danh sách múi giờ

Để định dạng một đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7, bạn sử dụng phương thức

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
6. Các tham số chuỗi định dạng giống như các tham số bạn sử dụng cho hàm

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
7. Ví dụ

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)

đầu ra

07/15/2021 6:38 AM

Code language: PHP (php)

Để đặt ngày và giờ cụ thể, bạn có thể chuyển chuỗi ngày & giờ cho hàm tạo

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
8 như thế này

$datetime = new DateTime('12/31/2019 12:00 PM'); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)

Hoặc bạn có thể sử dụng hàm

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
9 để đặt ngày

$datetime = new DateTime(); $datetime->setDate(2020, 5, 1); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)

đầu ra

05/01/2020 6:42 AM

Code language: PHP (php)

Thời gian bắt nguồn từ thời điểm hiện tại. Để cài đặt thời gian, bạn sử dụng hàm

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
0

$datetime = new DateTime(); $datetime->setDate(2020, 5, 1); $datetime->setTime(5, 30, 0); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
0

Vì phương thức

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
9,

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
0 và

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
3 trả về đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7, nên bạn có thể xâu chuỗi chúng như thế này, điều này khá tiện lợi

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
1

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
2

Tạo một đối tượng DateTime từ một chuỗi

Khi bạn chuyển chuỗi ngày ’06/08/2021′ cho hàm tạo

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
8 hoặc hàm

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
9, PHP sẽ hiểu nó là

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
7. Ví dụ

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
3

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
4

Nếu bạn muốn thông qua vào ngày 6 tháng 8 năm 2021, bạn cần sử dụng – hoặc. thay vì /. Ví dụ

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
5

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
6

Tuy nhiên, nếu bạn muốn phân tích chuỗi ngày ’06/08/2021′ thành d/m/Y, bạn cần thay thế / bằng – hoặc. thủ công

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
7

đầu ra

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
6

Cách tốt hơn để làm điều đó là sử dụng phương thức tĩnh

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
8 của đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-15 06:30:40.294788" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" }

Code language: PHP (php)
9

Trong ví dụ này, chúng tôi chuyển định dạng ngày làm đối số đầu tiên và chuỗi ngày làm đối số thứ hai

Lưu ý rằng khi bạn chuyển một chuỗi ngày không có thời gian, hàm tạo

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
8 sẽ sử dụng thời gian nửa đêm. Tuy nhiên, phương pháp

$datetime = new DateTime(); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
8 sử dụng thời gian hiện tại

So sánh hai đối tượng DateTime

PHP allows you to compare two DateTime objects using the comparison operators including >, >=, <, <=, ==, <=>. For example:

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
0

Tính toán sự khác biệt giữa hai đối tượng DateTime

Phương thức

07/15/2021 6:38 AM

Code language: PHP (php)
2 của đối tượng

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
8 trả về sự khác biệt giữa hai đối tượng

object(DateTime)#1 (3) { ["date"]=> string(26) "2021-07-14 21:33:27.986925" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }

Code language: PHP (php)
8 là đối tượng

07/15/2021 6:38 AM

Code language: PHP (php)
5. Ví dụ

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
1

đầu ra

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
2

07/15/2021 6:38 AM

Code language: PHP (php)
5 đại diện cho sự khác biệt giữa hai ngày trong năm, tháng, ngày, giờ, v.v. Để định dạng sự khác biệt, bạn sử dụng định dạng của

07/15/2021 6:38 AM

Code language: PHP (php)
5. Ví dụ

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
3

đầu ra

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
4

Kiểm tra tất cả các tham số định dạng DateInterval

Thêm một khoảng thời gian vào một đối tượng DateTime

Để thêm một khoảng thời gian cho đến nay, bạn tạo một đối tượng

07/15/2021 6:38 AM

Code language: PHP (php)
5 mới và truyền nó cho phương thức

07/15/2021 6:38 AM

Code language: PHP (php)
9. Ví dụ sau thêm 1 năm 2 tháng vào ngày

$datetime = new DateTime('12/31/2019 12:00 PM'); echo $datetime->format('m/d/Y g:i A');

Code language: PHP (php)
0

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
5

đầu ra

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
6

Để định dạng khoảng thời gian ngày, bạn sử dụng chuỗi định dạng khoảng thời gian ngày

Để trừ một khoảng từ một đối tượng

$datetime = new DateTime(); $timezone = new DateTimeZone('America/Los_Angeles'); $datetime->setTimezone($timezone); var_dump($datetime);

Code language: PHP (php)
7, bạn tạo một khoảng âm và sử dụng phương thức

07/15/2021 6:38 AM

Code language: PHP (php)
9

Làm cách nào để định dạng ngày và giờ trong PHP?

Hàm PHP date() được sử dụng để định dạng ngày và/hoặc thời gian. .
d - Thể hiện ngày trong tháng (01 đến 31)
m - Đại diện cho một tháng (01 đến 12)
Y - Đại diện cho một năm (bằng bốn chữ số)
l (chữ thường 'L') - Đại diện cho ngày trong tuần

Có loại ngày trong PHP không?

Giới thiệu Ngày/Giờ PHP . Sau đó, bạn có thể sử dụng các hàm ngày/giờ để định dạng ngày và giờ theo nhiều cách. The date/time functions allow you to get the date and time from the server where your PHP script runs. You can then use the date/time functions to format the date and time in several ways.

Làm cách nào để hiển thị định dạng ngày trong PHP?

Ví dụ. $date=date_create("15-03-2013"); . i. s");echo date_format($date,"Y/m/d H:i:s");

Mục đích của hàm date() trong PHP là gì?

Hàm date() định dạng ngày giờ địa phương và trả về chuỗi ngày đã định dạng .