Tôi nghĩ rằng nó có thể được trả lời chi tiết hơn. Trước hết, DateInterval
phương thức khởi tạo nhận một tham số có tên$interval_spec
là chuỗi.
DateInterval::__construct ( string $interval_spec )
Tham số này có đặc điểm kỹ thuật được mô tả như bên dưới:
Định dạng bắt đầu bằng chữ P, cho dấu chấm. Mỗi khoảng thời gian được biểu thị bằng một giá trị số nguyên, theo sau là một ký hiệu khoảng thời gian. Nếu thời lượng chứa các yếu tố thời gian, thì phần đó của thông số kỹ thuật được đặt trước bằng chữ T.
Có một số Chỉ định thời kỳ được sử dụng trong đối số:
- Y trong nhiều năm
- M trong nhiều tháng
- D trong nhiều ngày
- W trong nhiều tuần . Chúng được chuyển đổi thành ngày, vì vậy không thể kết hợp với D.
- H trong nhiều giờ
- M trong vài phút
- S trong giây
Hãy xem một số ví dụ bằng cách sử dụng Dấu chấm:
- Hai ngày là P2D.
- Hai giây là PT2S.
- Sáu năm năm phút là P6YT5M.
Có một thứ tự cần được duy trì như được mô tả trong tài liệu:
Các loại đơn vị phải được nhập từ đơn vị tỷ lệ lớn nhất ở bên trái đến đơn vị tỷ lệ nhỏ nhất ở bên phải. Vì vậy, năm trước tháng, tháng trước ngày, ngày trước phút, v.v. Vì vậy, một năm và bốn ngày phải được biểu thị là P1Y4D, không phải P4D1Y.
Đặc điểm kỹ thuật cũng có thể được biểu diễn dưới dạng ngày giờ .
- Một năm, hai tháng, bốn ngày sẽ là P0001-02-04T00: 00: 00
Nhưng các giá trị ở định dạng này không được vượt quá điểm cuộn của một khoảng thời gian nhất định (ví dụ: 25 giờ không hợp lệ).
P
nhưng tài liệu tham khảo đó quá thấp. Tôi đoán nó có nghĩa là thời gian và tôi đã tìm kiếmphp.net
cho từ đó, tôi không bao giờ rõ ràng đã đến trang constructor .. Nhưng nó không được giới thiệu trêndate_format
,DateTime::diff
,DateTime::format
,DateInterval
, và một loạt các chungDate/Time
chức năng. Tôi muốn biết nếu có bất kỳ tiền tố khác để biết về và bị nguyền rủa nếu tôi có thể tìm thấy nó cho đến khi tôi đến ngăn xếp trao đổi