Hướng dẫn php convert date/time to unix timestamp - php chuyển đổi ngày / giờ thành dấu thời gian unix

mktime () - Nhận thời gian unix cho một ngày

echo mktime(23, 24, 0, 11, 3, 2009);

Để xử lý AM/PM chỉ cần thêm 12 đến giờ nếu PM.

mktime($isAM ? $hrs : ($hrs + 12), $mins, $secs, $m, $d, $y);

Ngoài ra, bạn có thể sử dụng strtotime ():

strtotime () - phân tích về bất kỳ mô tả dữ liệu văn bản tiếng Anh nào vào dấu thời gian UNIX

echo strtotime("2009-11-03 11:24:00PM"); 

Phiên bản

6 bây giờ là vô hiệu.

Ví dụ

  • Ví dụ #1 ví dụ Strtotime ()
  • Ví dụ #2 Kiểm tra thất bại
  • Phiên bản

    6 bây giờ là vô hiệu.

    Ví dụ

    Ví dụ #1 ví dụ Strtotime ()strtotime() functionin PHP. It is used to convert English textual date-time description to a UNIX timestamp. The UNIX timestamp represents the number of seconds between a particular date and the Unix Epoch. 

    Syntax:

    strtotime ($EnglishDateTime, $time_now)

    Ví dụ #2 Kiểm tra thất bại

    Ghi chú

    Ghi chú:

    Ngày "tương đối" trong trường hợp này cũng có nghĩa là nếu một thành phần cụ thể của dấu ngày/thời gian không được cung cấp, nó sẽ được lấy nguyên văn từ 6. Đó là, $date8, nếu chạy vào ngày 31 tháng 5 năm 2022, sẽ được hiểu là $date9, sẽ tràn vào dấu thời gian trên = 0. (Trong một năm bước nhảy, nó sẽ là = 1.) Sử dụng = 2 hoặc = 3 sẽ tránh được vấn đề đó.

    Nếu số lượng của năm được chỉ định ở định dạng hai chữ số, các giá trị giữa 00-69 được ánh xạ tới 2000-2069 và 70-99 đến 1970-1999. Xem các ghi chú dưới đây để biết sự khác biệt có thể trên các hệ thống 32bit (ngày có thể có thể kết thúc vào ngày 2038-01-19 03:14:07).

    Phạm vi hợp lệ của dấu thời gian thường là từ Thứ Sáu, ngày 13 tháng 12 năm 1901 20:45:54 UTC đến Tue, ngày 19 tháng 1 năm 2038 03:14:07 UTC. (Đây là các ngày tương ứng với các giá trị tối thiểu và tối đa cho số nguyên có chữ ký 32 bit.)

    Đối với các phiên bản 64 bit của PHP, phạm vi hợp lệ của dấu thời gian là vô hạn một cách hiệu quả, vì 64 bit có thể biểu thị khoảng 293 tỷ năm theo một trong hai hướng.

    Sử dụng chức năng này cho các hoạt động toán học là không nên. Tốt hơn là sử dụng DateTime :: add () và datetime :: sub ().

    Xem thêm

    Phạm vi hợp lệ của dấu thời gian thường là từ Thứ Sáu, ngày 13 tháng 12 năm 1901 20:45:54 UTC đến Tue, ngày 19 tháng 1 năm 2038 03:14:07 UTC. (Đây là các ngày tương ứng với các giá trị tối thiểu và tối đa cho số nguyên có chữ ký 32 bit.)

    Đối với các phiên bản 64 bit của PHP, phạm vi hợp lệ của dấu thời gian là vô hạn một cách hiệu quả, vì 64 bit có thể biểu thị khoảng 293 tỷ năm theo một trong hai hướng.

    Sử dụng chức năng này cho các hoạt động toán học là không nên. Tốt hơn là sử dụng DateTime :: add () và datetime :: sub ().

    mktime($isAM ? $hrs : ($hrs + 12), $mins, $secs, $m, $d, $y);
    
    6
    1600819200
    1600905600
    1557964800
    2;

    1

    1

    Output:

    1600819200
    1600905600
    1557964800

    (Php 4, Php 5, Php 7, Php 8)

    Strtotime - phân tích về bất kỳ mô tả dữ liệu văn bản tiếng Anh nào vào dấu thời gian UNIXParse about any English textual datetime description into a Unix timestamp

    Sự mô tả

    strtotime (chuỗi 3,? int 4 = 5): int | false(string 3, ?int 4 = 5): int|false

    Hàm dự kiến ​​sẽ được cung cấp một chuỗi chứa định dạng ngày tiếng Anh và sẽ cố gắng phân tích định dạng đó thành dấu thời gian UNIX (số giây kể từ ngày 1 tháng 1 năm 1970 00:00:00 UTC), liên quan đến dấu thời gian được đưa ra trong 6, hoặc thời gian hiện tại nếu 6 không được cung cấp. Phân tích chuỗi ngày được xác định theo định dạng ngày và giờ và có một số cân nhắc tinh tế. Xem xét các chi tiết đầy đủ có được khuyến nghị mạnh mẽ.

    Cảnh báo

    Dấu thời gian UNIX mà hàm này trả về không chứa thông tin về múi giờ. Để thực hiện các tính toán với thông tin ngày/thời gian, bạn nên sử dụng datetimeimmutable có khả năng hơn.DateTimeImmutable.

    Mỗi tham số của hàm này sử dụng múi giờ mặc định trừ khi múi giờ được chỉ định trong tham số đó. Hãy cẩn thận không sử dụng các múi giờ khác nhau trong mỗi tham số trừ khi đó là dự định. Xem DATE_DEFAULT_TIMEZONE_GET () về các cách khác nhau để xác định múi giờ mặc định.date_default_timezone_get() on the various ways to define the default time zone.

    Thông số

    8

    Một chuỗi ngày/thời gian. Các định dạng hợp lệ được giải thích trong các định dạng ngày và giờ.

    6

    Dấu thời gian được sử dụng làm cơ sở để tính toán ngày tương đối.

    Trả về giá trị

    Trả về một dấu thời gian về thành công, $date0 nếu không.$date0 otherwise.

    Errors/Exceptions

    Mỗi cuộc gọi đến hàm ngày/giờ sẽ tạo $date1 nếu múi giờ không hợp lệ. Xem thêm Date_Default_Timezone_set ()$date1 if the time zone is not valid. See also date_default_timezone_set()

    Thay đổi

    Phiên bảnSự mô tả
    8.0.0 6 bây giờ là vô hiệu.

    Ví dụ

    Ví dụ #1 ví dụ Strtotime ()strtotime() example

    $date3

    Ví dụ #2 Kiểm tra thất bại

    $date4

    $date5

    $date6

    Ghi chú

    Ghi chú::

    Ngày "tương đối" trong trường hợp này cũng có nghĩa là nếu một thành phần cụ thể của dấu ngày/thời gian không được cung cấp, nó sẽ được lấy nguyên văn từ 6. Đó là, $date8, nếu chạy vào ngày 31 tháng 5 năm 2022, sẽ được hiểu là $date9, sẽ tràn vào dấu thời gian trên = 0. (Trong một năm bước nhảy, nó sẽ là = 1.) Sử dụng = 2 hoặc = 3 sẽ tránh được vấn đề đó.

    Ghi chú::

    Ngày "tương đối" trong trường hợp này cũng có nghĩa là nếu một thành phần cụ thể của dấu ngày/thời gian không được cung cấp, nó sẽ được lấy nguyên văn từ 6. Đó là, $date8, nếu chạy vào ngày 31 tháng 5 năm 2022, sẽ được hiểu là $date9, sẽ tràn vào dấu thời gian trên = 0. (Trong một năm bước nhảy, nó sẽ là = 1.) Sử dụng = 2 hoặc = 3 sẽ tránh được vấn đề đó.

    Ghi chú::

    Ngày "tương đối" trong trường hợp này cũng có nghĩa là nếu một thành phần cụ thể của dấu ngày/thời gian không được cung cấp, nó sẽ được lấy nguyên văn từ 6. Đó là, $date8, nếu chạy vào ngày 31 tháng 5 năm 2022, sẽ được hiểu là $date9, sẽ tràn vào dấu thời gian trên = 0. (Trong một năm bước nhảy, nó sẽ là = 1.) Sử dụng = 2 hoặc = 3 sẽ tránh được vấn đề đó.

    Nếu số lượng của năm được chỉ định ở định dạng hai chữ số, các giá trị giữa 00-69 được ánh xạ tới 2000-2069 và 70-99 đến 1970-1999. Xem các ghi chú dưới đây để biết sự khác biệt có thể trên các hệ thống 32bit (ngày có thể có thể kết thúc vào ngày 2038-01-19 03:14:07).

    Ghi chú::

    Ngày "tương đối" trong trường hợp này cũng có nghĩa là nếu một thành phần cụ thể của dấu ngày/thời gian không được cung cấp, nó sẽ được lấy nguyên văn từ 6. Đó là, $date8, nếu chạy vào ngày 31 tháng 5 năm 2022, sẽ được hiểu là $date9, sẽ tràn vào dấu thời gian trên = 0. (Trong một năm bước nhảy, nó sẽ là = 1.) Sử dụng = 2 hoặc = 3 sẽ tránh được vấn đề đó.DateTime::add() and DateTime::sub().

    Nếu số lượng của năm được chỉ định ở định dạng hai chữ số, các giá trị giữa 00-69 được ánh xạ tới 2000-2069 và 70-99 đến 1970-1999. Xem các ghi chú dưới đây để biết sự khác biệt có thể trên các hệ thống 32bit (ngày có thể có thể kết thúc vào ngày 2038-01-19 03:14:07).

    • Phạm vi hợp lệ của dấu thời gian thường là từ Thứ Sáu, ngày 13 tháng 12 năm 1901 20:45:54 UTC đến Tue, ngày 19 tháng 1 năm 2038 03:14:07 UTC. (Đây là các ngày tương ứng với các giá trị tối thiểu và tối đa cho số nguyên có chữ ký 32 bit.)
    • Đối với các phiên bản 64 bit của PHP, phạm vi hợp lệ của dấu thời gian là vô hạn một cách hiệu quả, vì 64 bit có thể biểu thị khoảng 293 tỷ năm theo một trong hai hướng.
    • Sử dụng chức năng này cho các hoạt động toán học là không nên. Tốt hơn là sử dụng DateTime :: add () và datetime :: sub ().
    • Xem thêm
    • Datetimeimmutable

    Datetimeimmutable :: createFromFormat () - phân tích chuỗi thời gian theo một định dạng được chỉ định