Vòng lặp giữa hai ngày php

timedelta[] được sử dụng để tính toán sự khác biệt về ngày tháng và cũng có thể được sử dụng để thao tác ngày tháng trong Python

Thí dụ

Nhưng khi sử dụng timedelta, chúng tôi không thể lặp lại các tháng giữa các ngày một cách hoàn hảo vì ở đây chúng tôi đang thêm 31 ngày cho mỗi tháng. Nhưng mỗi tháng sẽ không có đúng 31 ngày. Có tháng có 30 thậm chí 28, 29. Để giải quyết vấn đề, quy tắc đưa ra hành động giúp lặp lại giữa các ngày theo một khoảng thời gian cụ thể

Mã số

Python3




# import necessary packages

from datetimeimport datetime, timedelta

 

# date initialisation

rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
0
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
1
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
2
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
3
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
4
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
5
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
4
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
7
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
8

rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
9
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
1
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
2_______0_______3
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
4
2021-01-01 00:00:00
2021-02-01 00:00:00
2021-03-01 00:00:00
2021-04-01 00:00:00
2021-05-01 00:00:00
2021-06-01 00:00:00
2021-07-01 00:00:00
2021-08-01 00:00:00
2021-09-01 00:00:00
2021-10-01 00:00:00
2021-11-01 00:00:00
2021-12-01 00:00:00
2022-01-01 00:00:00
4
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
4
2021-01-01 00:00:00
2021-02-01 00:00:00
2021-03-01 00:00:00
2021-04-01 00:00:00
2021-05-01 00:00:00
2021-06-01 00:00:00
2021-07-01 00:00:00
2021-08-01 00:00:00
2021-09-01 00:00:00
2021-10-01 00:00:00
2021-11-01 00:00:00
2021-12-01 00:00:00
2022-01-01 00:00:00
6_______0_______8

 

2021-01-01 00:00:00
2021-02-01 00:00:00
2021-03-01 00:00:00
2021-04-01 00:00:00
2021-05-01 00:00:00
2021-06-01 00:00:00
2021-07-01 00:00:00
2021-08-01 00:00:00
2021-09-01 00:00:00
2021-10-01 00:00:00
2021-11-01 00:00:00
2021-12-01 00:00:00
2022-01-01 00:00:00
8

2021-01-01 00:00:00
2021-02-01 00:00:00
2021-03-01 00:00:00
2021-04-01 00:00:00
2021-05-01 00:00:00
2021-06-01 00:00:00
2021-07-01 00:00:00
2021-08-01 00:00:00
2021-09-01 00:00:00
2021-10-01 00:00:00
2021-11-01 00:00:00
2021-12-01 00:00:00
2022-01-01 00:00:00
9_______0_______1
2021-01-01 00:00:00
2022-01-01 00:00:00
1
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
1
2021-01-01 00:00:00
2022-01-01 00:00:00
3
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
8

 

2021-01-01 00:00:00
2022-01-01 00:00:00
5
2021-01-01 00:00:00
2022-01-01 00:00:00
6
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
1
2021-01-01 00:00:00
2022-01-01 00:00:00
8

2021-01-01 00:00:00
2022-01-01 00:00:00
9_______136_______0# import necessary packages1

2021-01-01 00:00:00
2022-01-01 00:00:00
9____136_______3

2021-01-01 00:00:00
2022-01-01 00:00:00
9_______0_______0# import necessary packages6
rrule[rrule.MONTHLY, dtstart=start_date, until=end_date]
1
2021-01-01 00:00:00
2021-02-01 00:00:00
2021-03-01 00:00:00
2021-04-01 00:00:00
2021-05-01 00:00:00
2021-06-01 00:00:00
2021-07-01 00:00:00
2021-08-01 00:00:00
2021-09-01 00:00:00
2021-10-01 00:00:00
2021-11-01 00:00:00
2021-12-01 00:00:00
2022-01-01 00:00:00
9

Đầu ra

2020-01-10 00:00:00
2020-02-10 00:00:00
2020-03-12 00:00:00
2020-04-12 00:00:00

Phương pháp 2. cai trị

rrule là một gói có trong thư viện dateutil và gói này bao gồm một phương thức cũng rrule lấy dtstart, cho đến và khoảng thời gian cụ thể làm tham số là ngày bắt đầu, ngày kết thúc và khoảng thời gian dựa trên lần lặp tương ứng. Các khoảng thời gian cụ thể là HÀNG TUẦN, HÀNG THÁNG, HÀNG NĂM, v.v.

Trong bài viết này, chúng ta sẽ xem cách tính chênh lệch giữa 2 ngày trong PHP, cùng với việc hiểu triển khai của nó thông qua các ví dụ. Đưa ra hai ngày tức là. , start_date và end_date & chúng ta cần tìm sự khác biệt giữa hai ngày

Xem xét ví dụ dưới đây

Input: start_date: 2016-06-01 22:45:00 
       end_date: 2018-09-21 10:44:01
Output: 2 years, 3 months, 21 days, 11 hours, 59 minutes, 1 seconds
Explanation: The difference of 2 dates will give the date in complete format.

Phương pháp 1. Sử dụng hàm date_diff[]

Hàm này được sử dụng để tìm sự khác biệt giữa hai ngày. Hàm này sẽ trả về một đối tượng DateInterval nếu thành công và trả về FALSE nếu thất bại

Thí dụ. Ví dụ này minh họa việc sử dụng hàm date_diff[] để tính chênh lệch giữa 2 ngày

PHP




Chủ Đề