Cách lấy tuần hiện tại bằng php?

Những thứ này sẽ giúp bạn có được các ngày của Thứ Hai, Thứ Ba, Thứ Tư, Thứ Năm, Thứ Sáu, Thứ Bảy và Thứ Bảy trước đó

date["Y-m-d", strtotime["previous monday"]];
date["Y-m-d", strtotime["previous tuesday"]];
date["Y-m-d", strtotime["previous wednesday"]];
date["Y-m-d", strtotime["previous thursday"]];
date["Y-m-d", strtotime["previous friday"]];
date["Y-m-d", strtotime["previous saturday"]];
date["Y-m-d", strtotime["previous sunday"]];

Nếu ngày hiện tại là thứ ba và bạn muốn lấy thứ hai của tuần trước, thì thứ hai trước đó sẽ không nhận được thứ hai bạn muốn, nó sẽ lấy ngày thứ hai ngay trước ngày thứ ba. Để lấy ngày từ thứ 2 đến thứ 6 của tuần trước ta cần tính chênh lệch giữa thứ 2 trước đó từ hàm strtotime và ngày hiện tại, nếu chênh lệch nhỏ hơn 7 tức là thứ 2 nằm trong tuần hiện tại. Nếu đó là thứ hai của tuần hiện tại, thì chúng ta có thể áp dụng thứ hai trước đó một lần nữa để có được thứ hai của tuần trước. Hàm bên dưới trả về một mảng các ngày từ Thứ Hai đến Chủ Nhật của tuần trước

function getLastWeekDates[]
{
	$lastWeek = array[];

	$prevMon = abs[strtotime["previous monday"]];
	$currentDate = abs[strtotime["today"]];
	$seconds = 86400; //86400 seconds in a day

	$dayDiff = ceil[ [$currentDate-$prevMon]/$seconds ]; 

	if[ $dayDiff < 7 ]
	{
		$dayDiff += 1; //if it's monday the difference will be 0, thus add 1 to it
		$prevMon = strtotime[ "previous monday", strtotime["-$dayDiff day"] ];
	}

	$prevMon = date["Y-m-d",$prevMon];

	// create the dates from Monday to Sunday
	for[$i=0; $iformat['W']]. Lưu ý rằng format[] trả về số tuần không có tiền tố [e. g. 05], vì vậy bạn cần intval để loại bỏ số 0 đứng đầu

Để có được năm có bốn chữ số tương ứng [e. g. 2022], sử dụng idate['o', $timestamp] hoặc strftime['%G', $timestamp] hoặc $dateTime->format['o']

Đọc thêm về strftime[], idate[] và DateTime. format[] trong hướng dẫn sử dụng PHP

Cách lấy ngày từ số tuần

Để lấy dấu thời gian Unix đại diện cho đầu tuần [Thứ Hai lúc nửa đêm], hãy sử dụng strtotime[sprintf["%4dW%02d", $year, $week]]

$year là năm có 4 chữ số [e. g. 2022] và $week là số tuần theo tiêu chuẩn ISO [1-53]. Cuộc gọi sprintf[] tạo ra một chuỗi tuần ở định dạng ISO 8601, e. g. "2022W01"

Số tuần theo tiêu chuẩn ISO-8601, các tuần bắt đầu từ Thứ Hai. Tuần đầu tiên của năm là tuần có Thứ Năm đầu tiên của năm đó [='Tuần 4 ngày đầu tiên']. đại diện ISO. 2022-W48

Số tuần cao nhất trong một năm là 52 hoặc 53.
2022 có 52 tuần.

ISO 8601 không phải là hệ thống đánh số tuần duy nhất trên thế giới, các hệ thống khác sử dụng tuần bắt đầu từ Chủ Nhật [Mỹ] hoặc Thứ Bảy [Hồi giáo]

❮ Tham chiếu ngày/giờ PHP

Thí dụ

Định dạng ngày giờ địa phương và trả về chuỗi ngày được định dạng

// In ngày
echo date["l"]. "
";

// In ngày, ngày, tháng, năm, thời gian, AM hoặc PM
echo date["l jS \of F Y h. i. s A"];
?>

Tự mình thử »

Định nghĩa và cách sử dụng

Hàm date[] định dạng ngày giờ cục bộ và trả về chuỗi ngày đã định dạng

cú pháp

Giá trị tham số

Tham sốMô tảĐịnh dạngBắt buộc. Chỉ định định dạng của chuỗi ngày xuất ra. Các ký tự sau có thể được sử dụng
  • d - Ngày trong tháng [từ 01 đến 31]
  • D - Một đại diện văn bản của một ngày [ba chữ cái]
  • j - Ngày trong tháng không có số 0 đứng đầu [1 đến 31]
  • l [viết thường 'L'] - Biểu diễn toàn văn của một ngày
  • N - Biểu diễn số theo tiêu chuẩn ISO-8601 của một ngày [1 cho Thứ Hai, 7 cho Chủ nhật]
  • S - Hậu tố thứ tự trong tiếng Anh của ngày trong tháng [2 ký tự st, nd, rd hoặc th. Hoạt động tốt với j]
  • w - Một đại diện số của ngày [0 cho Chủ Nhật, 6 cho Thứ Bảy]
  • z - Ngày trong năm [từ 0 đến 365]
  • W - Số tuần theo tiêu chuẩn ISO-8601 của năm [các tuần bắt đầu từ Thứ Hai]
  • F - Đại diện đầy đủ bằng văn bản của một tháng [từ tháng 1 đến tháng 12]
  • m - Một số đại diện cho một tháng [từ 01 đến 12]
  • M - Một đại diện văn bản ngắn của một tháng [ba chữ cái]
  • n - Biểu thị số của một tháng, không có số 0 đứng đầu [1 đến 12]
  • t - Số ngày trong tháng đã cho
  • L - Cho dù đó là năm nhuận [1 nếu là năm nhuận, 0 nếu không]
  • o - Số năm ISO-8601
  • Y - Một đại diện bốn chữ số của một năm
  • y - Một đại diện hai chữ số của một năm
  • a - Chữ thường am hoặc pm
  • A - Chữ hoa AM hoặc PM
  • B - Swatch thời gian Internet [000 đến 999]
  • g - Định dạng 12 giờ của một giờ [1 đến 12]
  • G - định dạng 24 giờ của một giờ [0 đến 23]
  • h - định dạng 12 giờ của một giờ [01 đến 12]
  • H - định dạng 24 giờ của một giờ [00 đến 23]
  • i - Phút có số 0 đứng đầu [00 đến 59]
  • s - Giây, với các số 0 đứng đầu [00 đến 59]
  • u - Micro giây [được thêm vào trong PHP 5. 2. 2]
  • e - Định danh múi giờ [Ví dụ. UTC, GMT, Đại Tây Dương/Açores]
  • I [viết hoa i] - Ngày có ở giờ tiết kiệm ánh sáng ban ngày hay không [1 nếu là Giờ tiết kiệm ánh sáng ban ngày, 0 nếu không]
  • O - Chênh lệch với giờ Greenwich [GMT] tính bằng giờ [Ví dụ. +0100]
  • P - Chênh lệch với giờ Greenwich [GMT] tính bằng giờ. phút [được thêm vào trong PHP 5. 1. 3]
  • T - Chữ viết tắt múi giờ [Ví dụ. EST, MDT]
  • Z - Độ lệch múi giờ tính bằng giây. Phần bù cho các múi giờ phía tây UTC là âm [-43200 đến 50400]
  • c - Ngày ISO-8601 [e. g. 2013-05-05T16. 34. 42+00. 00]
  • r - Ngày định dạng RFC 2822 [e. g. Thứ sáu, ngày 12 tháng 4 năm 2013 12. 01. 05 +0200]
  • U - Số giây kể từ Kỷ nguyên Unix [ngày 1 tháng 1 năm 1970 00. 00. 00 giờ GMT]

và các hằng số được xác định trước sau đây cũng có thể được sử dụng [có sẵn từ PHP 5. 1. 0]

  • DATE_ATOM - Nguyên tử [ví dụ. 2013-04-12T15. 52. 01+00. 00]
  • DATE_COOKIE - Cookie HTTP [ví dụ. Thứ Sáu, 12-Apr-13 15. 52. 01 giờ UTC]
  • DATE_ISO8601 - ISO-8601 [ví dụ. 2013-04-12T15. 52. 01+0000]
  • DATE_RFC822 - RFC 822 [ví dụ. Thứ sáu, 12 Tháng tư 13 15. 52. 01 +0000]
  • DATE_RFC850 - RFC 850 [ví dụ. Thứ Sáu, 12-Apr-13 15. 52. 01 giờ UTC]
  • DATE_RFC1036 - RFC 1036 [ví dụ. Thứ sáu, 12 Tháng tư 13 15. 52. 01 +0000]
  • DATE_RFC1123 - RFC 1123 [ví dụ. Thứ sáu, 12 Tháng tư 2013 15. 52. 01 +0000]
  • DATE_RFC2822 - RFC 2822 [Thứ sáu, ngày 12 tháng 4 năm 2013 15. 52. 01 +0000]
  • DATE_RFC3339 - Giống như DATE_ATOM [kể từ PHP 5. 1. 3]
  • DATE_RSS - RSS [Thứ sáu, ngày 12 tháng 8 năm 2013 15. 52. 01 +0000]
  • DATE_W3C - World Wide Web Consortium [ví dụ. 2013-04-12T15. 52. 01+00. 00]
dấu thời gianTùy chọn. Chỉ định một dấu thời gian Unix số nguyên. Mặc định là giờ địa phương hiện tại [thời gian[]]

chi tiết kỹ thuật

Giá trị trả về. Trả về một chuỗi ngày được định dạng khi thành công. FALSE khi lỗi + và E_WARNING Phiên bản PHP. 4+Nhật ký thay đổi. PHP5. 1. 0. Đã thêm lỗi múi giờ E_STRICT và E_NOTICE. Phạm vi hợp lệ của dấu thời gian bây giờ là từ Thứ Sáu, ngày 13 tháng 12 năm 1901 20. 45. 54 GMT đến Thứ ba, ngày 19 tháng 1 năm 2038 03. 14. 07 giờ GMT. Trước phiên bản 5. 1. 0 bị giới hạn từ 01-01-1970 đến 19-01-2038 trên một số hệ thống [e. g. Các cửa sổ].
PHP 5. 1. 1. Đã thêm các hằng số của định dạng ngày/giờ tiêu chuẩn có thể được sử dụng để chỉ định tham số định dạng❮ Tham chiếu ngày/giờ PHP

Làm cách nào tôi có thể nhận được ngày hiện tại từ tuần tới bằng PHP?

vừa mới sử dụng - date['Y-m-d H. i. s', strtotime['+1 week']]; hoạt động tốt trong PHP 7 để cung cấp cho một tuần kể từ bây giờ.

Làm cách nào tôi có thể bắt đầu và kết thúc một tuần bằng PHP?

Đây là cách bạn có thể biết ngày bắt đầu hoặc ngày kết thúc của tuần bằng cách cung cấp số tuần và năm . $monday = date['Ymd', strtotime["2013-W01-1"]];

PHP có bao nhiêu ngày một tuần?

Độ dài trung bình của một PHP . Phần lớn các PHP mong muốn khách hàng tham gia các phiên ở bất kỳ đâu trong khoảng thời gian từ ba đến năm ngày mỗi tuần và các phiên thường kéo dài khoảng sáu giờ.

Làm cách nào tôi có thể nhận được ngày bắt đầu và ngày kết thúc của tuần trước trong PHP?

Cách sử dụng. $today=date[]; . All the above functions that has been given will return the last week range irrespective of the start day of the week..

Chủ Đề