Chúng tôi được cung cấp một mảng bao gồm nhiều ngày ở định dạng [Y-m-d]. Chúng ta phải viết một chương trình bằng PHP để sắp xếp tất cả các ngày có trong mảng theo thứ tự giảm dần
ví dụ
Input : array["2018-06-04", "2014-06-08", "2018-06-05"] Output : 2018-06-05 2018-06-04 2014-06-08 Input : array["2016-09-12", "2009-09-08", "2009-09-09"] Output : 2016-09-12 2009-09-09 2009-09-08
Khuyến khích. Vui lòng thử cách tiếp cận của bạn trên {IDE} trước, trước khi chuyển sang giải pháp
Để giải quyết vấn đề này trong C/C++/Java hoặc bất kỳ ngôn ngữ lập trình mục đích chung nào khác, chúng tôi phải so sánh ngày dựa trên năm rồi tháng và cuối cùng theo ngày bằng cách lưu trữ chúng trong bất kỳ cấu trúc nào hoặc bất kỳ cấu trúc dữ liệu mong muốn nào khác. Nhưng trong PHP vấn đề này dường như rất dễ dàng nếu chúng ta áp dụng hàm strtotime[]. Hàm strtotime[] là một hàm PHP thay đổi một ngày nhất định ở bất kỳ định dạng nào thành dấu thời gian có bản chất là một số nguyên lớn và sau đó trong khi sắp xếp mảng, chúng ta có thể dễ dàng sử dụng PHP. hàm usort[] bằng cách xác định hàm so sánh. Hàm so sánh sẽ chấp nhận hai đối số ngày sẽ được chuyển đổi thành dấu thời gian nguyên bằng cách sử dụng hàm strtotime[] và sau đó được so sánh với ngày sắp xếp dựa trên giá trị dấu thời gian nguyên
Chức năng sẵn có được sử dụng
- strtotime[]. Hàm này thay đổi chuỗi ngày đã cho thành dấu thời gian [giá trị int lớn]
- sắp xếp[]. Hàm này sắp xếp mảng đã cho theo hàm so sánh do người dùng xác định
Dưới đây là triển khai PHP của ý tưởng trên
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]5
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]8
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]9
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]0
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]1
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]2______10
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]1
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]2
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]3
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]4
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]5
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]2
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]50
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]1
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]54
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]55
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]56
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]57
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]4
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]59
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]5
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]2
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]65
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]1
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]69
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]55
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]56
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]72
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]4
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]59
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]55
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]56
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]77
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]78
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]7
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]80
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]81
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]82_______283
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]6____285
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]0
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]87
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]0
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]89
Array [ [0] => 2016-09-12 [1] => 2009-09-09 [2] => 2009-09-06 ]90