14,958
edits
(Created page with " {| class="wikitable sortable nowrap" |- ! style="text-align:right;" | Day ! Sunday ! Monday ! Tuesday ! Wednesday ! Thursday ! Friday ! Saturday |- ! Weekday ([https://dev.my...") |
|||
| (27 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
Numeric representation of the day of the week. MySQL, Excel or PHP approaches to specify these date time. | |||
== Weekday == | |||
The value of weekday obtained from different approaches. | |||
<div style="width:100%; min-height: .01%; overflow-x: auto;"> | |||
{| class="wikitable sortable nowrap" | {| class="wikitable sortable nowrap" | ||
|- | |- | ||
! style="text-align:right;" | | ! style="text-align:right;" | Weekday values from different approaches | ||
! Sunday | ! Sunday | ||
! Monday | ! Monday | ||
| Line 11: | Line 16: | ||
! Saturday | ! Saturday | ||
|- | |- | ||
! Weekday ([https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_weekday MySQL]) | ! [http://php.net/manual/en/function.date.php PHP date] with N format character: Weekday ([https://en.wikipedia.org/wiki/ISO_week_date ISO-8601]) | ||
| 7 | |||
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | |||
|- | |||
! [https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_weekday MySQL WEEKDAY() function] | |||
| 6 | |||
| 0 | |||
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
|- | |||
! [https://www.w3schools.com/sql/func_mysql_dayofweek.asp MySQL DAYOFWEEK() Function] | |||
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | |||
| 7 | |||
|- | |||
! [https://support.office.com/zh-tw/article/WEEKDAY-%E5%87%BD%E6%95%B8-60e44483-2ed1-439f-8bd0-e404c190949a Excel WEEKDAY() function] | |||
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | | 6 | ||
| 7 | |||
|- | |||
! [http://php.net/manual/en/function.date.php PHP date] with w format character | |||
| 0 | | 0 | ||
| 1 | | 1 | ||
| Line 19: | Line 59: | ||
| 4 | | 4 | ||
| 5 | | 5 | ||
| 6 | |||
|- | |||
|} | |||
</div> | |||
== Get the date == | |||
Get the date of weekday from another known date (today or another specific day) | |||
<div style="width:100%; min-height: .01%; overflow-x: auto;"> | |||
{| class="wikitable sortable nowrap" | |||
|- | |- | ||
! style="text-align:right;" | Day | |||
! Sunday | |||
! Monday | |||
! Tuesday | |||
! Wednesday | |||
! Thursday | |||
! Friday | |||
! Saturday | |||
|- | |||
! Last week | ! Last week | ||
| SELECT CURDATE() + INTERVAL -8 - WEEKDAY(CURDATE()) DAY; | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">-8</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())-6</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("Sunday -14 day")) . PHP_EOL;</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">-7</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())-5</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("monday this week -7 day")) . PHP_EOL;</nowiki>}} | ||
| | |||
| | |||
| | | | ||
| | | | ||
| | | | ||
| MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">-3</span> - WEEKDAY(CURDATE()) DAY;}} <br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime('Friday -7 day')) . PHP_EOL;</nowiki>}} | |||
| MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">-2</span> - WEEKDAY(CURDATE()) DAY;}} <br /> PHP<ref>[https://stackoverflow.com/questions/3742820/php-how-to-get-previous-sunday-of-a-specific-date-in-the-past PHP: How to get previous Sunday of a specific date in the past..? - Stack Overflow]</ref>: (1) {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("last Saturday")) . PHP_EOL;</nowiki>}} (2) {{kbd | key=<nowiki>echo date('Y-m-d', strtotime('last Saturday', strtotime("2018-03-04 00:01:00"))) . PHP_EOL;</nowiki>}} | |||
|- | |- | ||
! This week | ! This week | ||
| SELECT CURDATE() + INTERVAL -1 - WEEKDAY(CURDATE()) DAY; | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">-1</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+1</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("Sunday -7 day")) . PHP_EOL;</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">0</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+2</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("monday this week")) . PHP_EOL;</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">1</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+3</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">2</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+4</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">3</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+5</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">4</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+6</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime('Friday')) . PHP_EOL;</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">5</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+7</nowiki>}} <br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("Saturday")) . PHP_EOL;</nowiki>}} | ||
|- | |- | ||
! Next week | ! Next week | ||
| SELECT CURDATE() + INTERVAL 6 - WEEKDAY(CURDATE()) DAY; | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">6</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+8</nowiki>}}<br />PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("Sunday")) . PHP_EOL;</nowiki>}} | ||
| | | MySQL: {{kbd | key=SELECT CURDATE() + INTERVAL <span class="hightlight">7</span> - WEEKDAY(CURDATE()) DAY;}} <br />Excel: {{kbd | key=<nowiki>=TODAY()-WEEKDAY(NOW())+9</nowiki>}}<br />PHP: (1) {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("next monday")) . PHP_EOL;</nowiki>}} (2) {{kbd | key=<nowiki>echo date('Y-m-d', strtotime("monday this week +7 day")) . PHP_EOL;</nowiki>}} | ||
| | |||
| | | | ||
| | | | ||
| | | | ||
| PHP: {{kbd | key=<nowiki>echo date('Y-m-d', strtotime('Friday +7 day')) . PHP_EOL;</nowiki>}} | |||
| | | | ||
|- | |- | ||
|} | |} | ||
</div> | |||
== References == | |||
<References /> | |||
== Further reading == | |||
* PHP [http://php.net/manual/en/function.date.php date] function | * PHP [http://php.net/manual/en/function.date.php date] function: w character (0 for Sunday through 6 for Saturday) or N character (1 for Monday through 7 for Sunday) | ||
* [https://support.office.com/zh-tw/article/WEEKDAY-%E5%87%BD%E6%95%B8-60e44483-2ed1-439f-8bd0-e404c190949a WEEKDAY 函數 - Office 支援] | |||
* [https://en.wikipedia.org/wiki/ISO_8601 ISO 8601 - Wikipedia] | |||
* [https://stackoverflow.com/questions/23020162/how-to-get-this-coming-sundays-date mysql - How to get this coming Sunday's date? - Stack Overflow] | |||
* [https://support.microsoft.com/zh-tw/help/827327/how-to-return-a-day-of-the-week-for-a-date-in-excel 如何在 Excel 中傳回的日期星期幾] | |||
* [https://support.office.com/zh-tw/article/today-%E5%87%BD%E6%95%B8-5eb3078d-a82c-4736-8930-2f51a028fdd9 TODAY 函數 - Office 支援] | |||
[[Category:PHP]] | [[Category:PHP]] | ||