Có thể lấy ngày đầu tiên/cuối cùng của tuần bằng cách sử dụng Relative Date Time format của PHP không?Nhận ngày đầu tiên/cuối cùng của tuần
Tôi đã cố gắng để làm:
date_default_timezone_set('Europe/Amsterdam');
$date = new DateTime();
$date->modify('first day of this week'); // to get the current week's first date
echo $date->format('Y-m-d'); // outputs 2011-12-19
$date->modify('first day of week 50'); // to get the first date of any week by weeknumber
echo $date->format('Y-m-d'); // outputs 2011-12-18
$date->modify('last day of this week'); // to get the current week's last date
echo $date->format('Y-m-d'); // outputs 2011-12-17
$date->modify('last day of week 50'); // to get the last date of any week by weeknumber
echo $date->format('Y-m-d'); // outputs 2011-12-18
Như bạn có thể see nó không ra ngày chính xác.
Theo the docs điều này sẽ có thể nếu tôi chính xác.
Tôi đang làm điều gì đó khủng khiếp sai?
EDIT
tôi cần phải sử dụng DateTime PHP cho những ngày trong tương lai xa.
CẬP NHẬT
Nó được chỉ lạ bây giờ. Tôi đã thực hiện một số thử nghiệm khác.
của Windows PHP 5.3.3
2011-12-01
Warning: DateTime::modify() [datetime.modify]: Failed to parse time string (first day of week 50) at position 13 (w): The timezone could not be found in the database in C:\Users\Gerrie\Desktop\ph\Websites\Charts\www.charts.com\public\index.php on line 9
2011-12-01
2011-11-30
Warning: DateTime::modify() [datetime.modify]: Failed to parse time string (last day of week 50) at position 12 (w): The timezone could not be found in the database in C:\Users\Gerrie\Desktop\ph\Websites\Charts\www.charts.com\public\index.php on line 15
2011-11-30
Linux 5.3.8
2011-12-01
2011-12-01
2011-11-30
2011-11-30
Điều này không phụ thuộc vào miền địa phương, nếu chủ nhật hoặc thứ hai là ngày đầu tiên trong tuần? – mario
@mario: Tôi không biết bạn nói với tôi. Dù bằng cách nào thì hai cái đầu tiên cũng sẽ xuất ra cùng một thứ. Cũng vậy với hai IMHO cuối cùng. Cho dù nó bắt đầu vào một chủ nhật/thứ hai – PeeHaa