Bạn cần chỉ định chế độ 3 trong cuộc gọi mysql YEARWEEK:
SELECT YEARWEEK(now(),3);
PHP date()
trình giữ chỗ W
trả về số tuần theo đặc điểm kỹ thuật ISO 8601
. Điều đó có nghĩa là các tuần bắt đầu vào Thứ Hai (không phải Chủ Nhật), tuần đầu tiên của năm là số 1 (không phải 0) và tuần đó là tuần đầu tiên có hơn một nửa số ngày trong năm mới (vì vậy nó phải là tháng Giêng. trước thứ Năm). Theo tài liệu cho MySQL Hàm WEEK
, kết hợp các tùy chọn đó là chế độ 3.
Ngoài ra, để kéo ghi chú của Alles vào câu trả lời được chấp nhận vì nó quan trọng:phần giữ chỗ Y
và W
không đi cùng nhau. Nếu bạn muốn năm đi cùng với số ISO tuần, bạn nên sử dụng o
thay vì Y
. Ví dụ:hãy xem xét tuần bắt đầu vào Thứ Hai, ngày 29 tháng 12 năm 2014:
date('YW', mktime(0,0,0,12,29,2014)); #=> 201401 : 1st week of 2014??
date('oW', mktime(0,0,0,12,29,2014)); #=> 201501 : better