Hướng dẫn get week in month php - nhận tuần trong tháng php

Tôi có một loạt các ngày ngẫu nhiên [không đến từ mysql]. Tôi cần nhóm chúng vào tuần là Tuần 1, Tuần 2, v.v. đến Tuần 5.

Những gì tôi có là đây:

$dates = array['2015-09-01','2015-09-05','2015-09-06','2015-09-15','2015-09-17'];

Những gì tôi cần là một chức năng để có được số tuần của tháng bằng cách cung cấp ngày.

Tôi biết rằng tôi có thể nhận được số phát trực tiếp bằng cách thực hiện

Week of the month = Week of the year - Week of the year of first day of month + 1
7 nhưng số tuần này là con số giữa năm [1-52] nhưng tôi chỉ cần số tuần của tháng, ví dụ: Vào tháng 9 năm 2015, có 5 tuần:

  • Tuần 1 = 1 đến 5
  • Tuần 2 = thứ 6 đến 12
  • Tuần3 = 13 đến 19
  • Tuần4 = 20 đến 26
  • Tuần 5 = 27 đến 30

Tôi sẽ có thể nhận được tuần 1 tuần bằng cách chỉ cung cấp ngày, ví dụ:

$weekNumber = getWeekNumber['2015-09-01'] //output 1;
$weekNumber = getWeekNumber['2015-09-17'] //output 3;

Anders

8.0379 Huy hiệu vàng51 Huy hiệu bạc82 Huy hiệu Đồng9 gold badges51 silver badges82 bronze badges

Được hỏi ngày 16 tháng 9 năm 2015 lúc 18:18Sep 16, 2015 at 18:18

1

Tôi nghĩ rằng mối quan hệ này nên đúng và có ích:

Week of the month = Week of the year - Week of the year of first day of month + 1

Chúng ta cũng cần đảm bảo rằng các tuần "chồng chéo" từ năm trước được xử lý chính xác - nếu ngày 1 tháng 1 là vào tuần 52 hoặc 53, nó sẽ được tính là tuần 0. theo cách tương tự, nếu một ngày vào tháng 12 là Tuần đầu tiên của năm sau, nó nên được tính là 53. [Các phiên bản trước của câu trả lời này không thực hiện được điều này đúng cách.]

Bài Viết Liên Quan

Chủ Đề