Hướng dẫn convert int to date php - chuyển đổi int sang date php


Tôi ngạc nhiên nếu nó có thể đảo ngược. Ý tôi là tôi có thể convert 1388516401 to 2014-01-01 00:00:01. Điều tôi thực sự muốn biết là, logic đằng sau sự chuyển đổi này là gì. Làm thế nào PHP chuyển đổi ngày thành một số nguyên cụ thể.

Giacomo1968

25.2k11 Huy hiệu vàng69 Huy hiệu bạc97 Huy hiệu Đồng11 gold badges69 silver badges97 bronze badges

Hỏi ngày 16 tháng 12 năm 2013 lúc 17:36Dec 16, 2013 at 17:36

3

Có bạn có thể chuyển đổi nó trở lại. Bạn co thể thử:

date["Y-m-d H:i:s", 1388516401];

Logic đằng sau chuyển đổi này từ ngày sang số nguyên được giải thích trong Strtotime trong PHP:

Chức năng 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 ngay bây giờ, hoặc Thời gian hiện tại nếu bây giờ không được cung cấp.

Ví dụ, strtotime["1970-01-01 00:00:00"] cung cấp cho bạn 0 và strtotime["1970-01-01 00:00:01"] cung cấp cho bạn 1.

Điều này có nghĩa là nếu bạn đang in strtotime["2014-01-01 00:00:01"] sẽ cung cấp cho bạn đầu ra 1388516401, thì ngày ____10 là 1.388.516.401 giây sau ngày 1 tháng 1 năm 1970 00:00:00 UTC.

Moshe Katz

15.2K7 Huy hiệu vàng65 Huy hiệu bạc111 Huy hiệu đồng7 gold badges65 silver badges111 bronze badges

Đã trả lời ngày 16 tháng 12 năm 2013 lúc 17:46Dec 16, 2013 at 17:46

SabarisabariSabari

6.0851 Huy hiệu vàng25 Huy hiệu bạc34 Huy hiệu đồng1 gold badge25 silver badges34 bronze badges

1

Bạn có thể thử điều này,

echo date["Y-m-d H:i:s", 1388516401];

Như đã lưu ý bởi Thegame,

Điều này có nghĩa là bạn vượt qua một giá trị chuỗi cho thời gian và tùy chọn là một giá trị cho thời gian hiện tại, đó là dấu thời gian Unix. Giá trị được trả về là một số nguyên là dấu thời gian Unix.

echo strtotime["2014-01-01 00:00:01"];

Điều này sẽ trở lại vào giá trị 1388516401, đó là dấu thời gian UNIX cho ngày 2014-01-01. Điều này có thể được xác nhận bằng hàm ngày [] như dưới đây:

echo date['Y-m-d', 1198148400]; // echos 2014-01-01

Đã trả lời ngày 16 tháng 12 năm 2013 lúc 17:38Dec 16, 2013 at 17:38

Krish rkrish rKrish R

22.3K7 Huy hiệu vàng49 Huy hiệu bạc57 Huy hiệu đồng7 gold badges49 silver badges57 bronze badges

0

Tôi đoán bạn đang hỏi tại sao 1388516401 bằng 2014-01-01 ...?

Có một lý do lịch sử cho điều đó. Có một biến số nguyên 32 bit, được gọi là

date["Y-m-d H:i:s", 1388516401];
1, giữ số lượng thời gian trôi qua kể từ 1970-01-01 00:00:00. Giá trị của nó thể hiện thời gian tính bằng giây. Điều này có nghĩa là trong năm 2014-01-01 00:00:01
date["Y-m-d H:i:s", 1388516401];
1 sẽ bằng 1388516401.1970-01-01 00:00:00. Its value expresses time in seconds. This means that in 2014-01-01 00:00:01
date["Y-m-d H:i:s", 1388516401];
1 will be equal to 1388516401.

Điều này dẫn chúng ta chắc chắn đến một sự thật thú vị khác ... vào năm 2038-01-19 03:14:07

date["Y-m-d H:i:s", 1388516401];
1 sẽ đạt 2147485547, giá trị tối đa cho số 32 bit. Bạn đã bao giờ nghe về John Titor và vấn đề năm 2038 chưa? : D2038-01-19 03:14:07
date["Y-m-d H:i:s", 1388516401];
1 will reach 2147485547, the maximum value for a 32-bit number. Ever heard about John Titor and the Year 2038 problem? :D

Đã trả lời ngày 16 tháng 12 năm 2013 lúc 17:49Dec 16, 2013 at 17:49

VereosvereosVereos

4934 Huy hiệu bạc15 Huy hiệu Đồng4 silver badges15 bronze badges

Hàm Time [] hiển thị các giây từ bây giờ và Epoch Unix, 01 01 1970 [00:00:00 GMT]. Strtotime [] biến đổi định dạng ngày bình thường thành định dạng thời gian []. Vì vậy, đại diện của ngày đó thành vài giây sẽ là: 1388516401

Nguồn: //www.php.net/time

Đã trả lời ngày 16 tháng 12 năm 2013 lúc 17:47Dec 16, 2013 at 17:47

SpiderLinkedSpiderLinkedSpiderLinked

3431 Huy hiệu vàng6 Huy hiệu bạc14 Huy hiệu đồng1 gold badge6 silver badges14 bronze badges

Làm thế nào để chuyển đổi số nguyên thành DateTime trong PHP?

Làm thế nào để chuyển đổi số nguyên sang định dạng DateTime Php Câu trả lời..
$ s = '06/10/2011 19:00:02 ';.
$ date = strtotime [$ s] ;.
Ngày Echo ['d/m/y h: i: s', $ date] ;.

Làm thế nào tôi có thể nhận được ngày từ số trong PHP?

Hàm idate [] là một hàm sẵn có trong PHP được sử dụng để định dạng thời gian/ngày cục bộ là một số nguyên.Định dạng $ và $ Timestamp được gửi dưới dạng tham số cho hàm idate [] và nó trả về một số nguyên được định dạng theo định dạng được chỉ định bằng dấu thời gian đã cho.idate[] function is an inbuilt function in PHP which is used to format a local time/date as an integer. The $format and $timestamp are sent as parameters to the idate[] function and it returns an integer formatted according to the specified format using the given timestamp.

Strtotime có nghĩa là gì trong PHP?

Hàm strtotime [] phân tích dữ liệu văn bản tiếng Anh vào dấu thời gian unix [số giây kể từ ngày 1 tháng 1 năm 1970 00:00:00 gmt].Lưu ý: Nếu năm được chỉ định ở định dạng hai chữ số, các giá trị trong khoảng 0-69 được ánh xạ tới 2000-2069 và các giá trị trong khoảng 70-100 được ánh xạ tới 1970-2000.parses an English textual datetime into a Unix timestamp [the number of seconds since January 1 1970 00:00:00 GMT]. Note: If the year is specified in a two-digit format, values between 0-69 are mapped to 2000-2069 and values between 70-100 are mapped to 1970-2000.

Làm thế nào chuyển đổi giây sang vài phút và giây trong PHP?

Mã PHP: Diff [$ dt2]-> định dạng [' %một ngày, %h giờ, %i phút và %s giây'];} echo convert_seconds [200000].

Bài Viết Liên Quan

Chủ Đề