Tôi có một trường DateTime trong cơ sở dữ liệu của mình có chứa thông tin sau:
2012-05-03 17:34:01Tôi muốn kiểm tra sự khác biệt giữa trường DateTime và bây giờ:
$now = date("Y-m-d H:i:s");Tôi đang cố gắng tìm ra bao nhiêu ngày đã trôi qua từ bây giờ và thời gian được viết vào trường cơ sở dữ liệu.
Làm thế nào tôi có thể đạt được điều này?
Khi được hỏi ngày 4 tháng 5 năm 2012 lúc 11:38May 4, 2012 at 11:38
HairynuggetShiRyLgetshairynuggets
3.15121 Huy hiệu vàng55 Huy hiệu bạc89 Huy hiệu đồng21 gold badges55 silver badges89 bronze badges
2
Đây là câu trả lời :)
$now = new DateTime(); $date = new DateTime("2012-05-03 17:34:01"); echo $date->diff($now)->format("%d days, %h hours and %i minutes");
Đã trả lời ngày 4 tháng 5 năm 2012 lúc 11:57May 4, 2012 at 11:57
0
$diff = abs(strtotime($date2) - strtotime($date1));
Đã trả lời ngày 4 tháng 5 năm 2012 lúc 11:41May 4, 2012 at 11:41
Swatiswatiswati
1.65910 Huy hiệu bạc13 Huy hiệu đồng10 silver badges13 bronze badges
date_diff::
$datetime1 = new DateTime('2009-10-11'); $datetime2 = new DateTime("now"); $interval = $datetime1->diff($datetime2); echo $interval->format('%R%a days');
T30
10,7k6 huy hiệu vàng52 Huy hiệu bạc57 Huy hiệu đồng6 gold badges52 silver badges57 bronze badges
Đã trả lời ngày 4 tháng 5 năm 2012 lúc 11:40May 4, 2012 at 11:40
WojtektwojtektWojtekT
4.72524 Huy hiệu bạc37 Huy hiệu đồng24 silver badges37 bronze badges
1
DateTimeImmutable::diff
DateTime::diff
date_diff
(Php 5> = 5.3.0, Php 7, Php 8)
DateTimeInterface :: Diff - DateTimeIMmutable :: Diff - DateTime :: Diff - Date_Diff - Trả về sự khác biệt giữa hai đối tượng DateTime -- DateTimeImmutable::diff -- DateTime::diff -- date_diff — Returns the difference between two DateTime objects
Sự mô tả
Phong cách hướng đối tượng
Thông số
datetimeNgày để so sánh với.
absoluteKhoảng thời gian có nên bị buộc là tích cực?
Trả về giá trị
Đối tượng DateInterVal đại diện cho sự khác biệt giữa hai ngày.DateInterval object represents the difference between the two dates.
Giá trị trả về cụ thể hơn biểu thị khoảng thời gian đồng hồ để áp dụng cho đối tượng ban đầu ($this hoặc $originObject) để đến $now = date("Y-m-d H:i:s"); 0. Quá trình này không phải lúc nào cũng có thể đảo ngược.
Phương pháp này nhận thức được các thay đổi DST và do đó có thể trả về một khoảng $now = date("Y-m-d H:i:s"); 1, theo một trong các ví dụ. Nếu bạn muốn tính toán theo thời gian tuyệt đối, bạn cần chuyển đổi cả ________ 8/________ 13 và $now = date("Y-m-d H:i:s"); 0 sang UTC trước.
Ví dụ
Ví dụ #1 DateTimeIMMutable :: Diff () Ví dụDateTimeImmutable::diff() example
Phong cách hướng đối tượng
$now = date("Y-m-d H:i:s"); 5
Thông số
$now = date("Y-m-d H:i:s"); 6
datetime
Ngày để so sánh với.DateTimeInterface::diff() during DST changeover
$now = date("Y-m-d H:i:s"); 7
absolute
Khoảng thời gian có nên bị buộc là tích cực?DateTime object comparison
Trả về giá trị:
Đối tượng DateInterVal đại diện cho sự khác biệt giữa hai ngày. and DateTime objects can be compared using comparison operators.
$now = date("Y-m-d H:i:s"); 8
absolute
bool(false) bool(true) bool(false)
Khoảng thời gian có nên bị buộc là tích cực?
- Trả về giá trị
- Đối tượng DateInterVal đại diện cho sự khác biệt giữa hai ngày.
- Giá trị trả về cụ thể hơn biểu thị khoảng thời gian đồng hồ để áp dụng cho đối tượng ban đầu ($this hoặc $originObject) để đến $now = date("Y-m-d H:i:s"); 0. Quá trình này không phải lúc nào cũng có thể đảo ngược.
Không có người dùng đóng góp ghi chú cho trang này.