从PHP的任何日期开始,为一年中的每个星期生成开始日期和结束日期

杰森·戴维斯(JasonDavis)

最近,我遇到了一个应用程序https://entire.life该应用程序显示了一个日历,如下面的图片所示,其中显示了您生命中每一年的一排点。

点的行宽为52点,该行年中每周1点。

每行是一年。

每行第一个点星期日期从您生日的那一周开始,而不是从该年的1月1日开始。因此,每周的点是每行1年,从生日那天开始到结束。

下面的最后一张图片显示,今天日期的未来的周点显示为灰色点,表示这些周尚未发生。

这是上面图片中的实时示例,旨在了解实际的效果https://entire.life/jason-davis


https://i.stack.imgur.com/ne07D.png 在此处输入图片说明


下图显示了一个表单,用于为单击的当前星期点添加事件。

https://i.stack.imgur.com/K5BUT.png 在此处输入图片说明


此图显示了将来日期的星期点是如何变成灰色的。

https://i.stack.imgur.com/pYGAn.png 在此处输入图片说明


问题

使用PHP,我想根据用户的出生日期(如上面显示的应用程序)生成这样的日历。

这是上面图片中的实时示例,旨在了解实际的效果https://entire.life/jason-davis

规则:

  • 生成代表一年中每个星期的点行
  • 从用户的出生日期年份开始,生成一行以上的100个年份的年点。
  • 每行的起始周点应从用户的生日日期周开始,而不应在该年的1月1日开始。

Using PHP's DateTime functions how can I determine the start and end dates for each of the 52 weeks based on a users birth date?

My birthdate in the example here is April 21 1983 The 1st years week dots represent these dates based on that start date:

1st row of year dots
- 21 – 27 Apr 1983 - 0 years old
- 28 Apr – 4 May 1983 - 0 years old
- 5 – 11 May 1983 - 0 years old
- 12 – 18 May 1983 - 0 years old
- 19 – 25 May 1983 - 0 years old
- 26 May – 1 Jun 1983 - 0 years old
- 2 – 8 Jun 1983 - 0 years old
- 9 – 15 Jun 1983 - 0 years old
- 16 – 22 Jun 1983 - 0 years old
- 23 – 29 Jun 1983 - 0 years old
- ...
- ... - ...
- 29 Mar – 4 Apr 1984 - 0 years old
- 5 – 11 Apr 1984 - 0 years old
- 12 – 18 Apr 1984 - 0 years old
- 19 – 20 Apr 1984 - 0 years old

年点第二排
-1984年4月21日至27日1岁-1984年4月28日至5月4日-1岁
- 1984年5月11日至5月11日-1岁
-1984年5月12日至18日-1岁
-5月19日至25日1984 - 1岁以上
- 5月26日- 1984年6月1日- 1岁以上
- 2 - 1984年6月8日- 1岁以上
- 9 - 1984年6月15日- 1岁以上
- 16 - 1984年6月22日- 1岁以上
- 23 - 29 1984年6月-1岁
-...
-...
-...-
1985年3月29日至4月4日-1岁
- 1985年4月5日至11日-1岁
-1985年4月12日至18日-1岁
- 1985年4月19日至20日-1岁

亚恩·查伯特(Yann Chabot)

你去了:

<?php 
   $userBirthDate = "1990-10-02"; // You probably use data from database or POST or GET, I setted a static one just for the example 
   $wishedDate = new DateTime($userBirthDate); // Here, you can add any desired date as an argument to DateTime, by default, it'll take the current DateTime.
   // This is for 100 years
   for ($x = 0; $x < 100; $x++){
     echo '<hr>'; // Just so every year will be separated by a html horizontal bar
     $limit = 52; // 52 for a year, but you could do as much as you need right there
     for ($i = 0; $i < $limit; $i++){
       echo $wishedDate->format('Y-m-d H:i:s'); // Write the current date
       echo '<br />'; // Just to switch line
       $wishedDate->modify('+1 week'); // Add one week to the wished date 
     }
   }
?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获得一年中所有星期的所有开始日期

来自分类Dev

在 SQL 中,如何根据开始日期和经过的天数计算一年中的天数

来自分类Dev

使用php pdo为一年中的每个日期添加一行

来自分类Dev

多个“开始日期时间”和“结束日期时间”。为开始日期时间和结束日期时间之间的每个日期生成一个新行

来自分类Dev

如何确定从日期算起一年中的星期?

来自分类Dev

如何选择一年中的每个星期一日期和每个星期五日期

来自分类Dev

从日期开始计算一年中的哪一天

来自分类Dev

PHP日期获取每个期间的开始日期和结束日期

来自分类Dev

从日期获取星期开始日期和星期结束日期

来自分类Dev

一年中的同月PHP的加入日期

来自分类Dev

查找星期开始和结束日期

来自分类Dev

SQL过滤掉任何一年中的特定月份,日期和时间

来自分类Dev

jQuery ui datepicker中的一年的开始日期

来自分类Dev

在Sybase中获取当前星期的开始和结束日期

来自分类Dev

将一年中的日期转换为日期

来自分类Dev

将一年中的日期转换为日期

来自分类Dev

如何从一年中的日期获取日期

来自分类Dev

R选择一年中具有> 2个相似开始日期的电子邮件地址

来自分类Dev

日期范围中的开始和结束日期

来自分类Dev

Bootstrap中的开始日期和结束日期

来自分类Dev

AngularJS中的开始日期和结束日期

来自分类Dev

日期范围中的开始和结束日期

来自分类Dev

尝试列出一年中的所有星期一及其日期

来自分类Dev

PHP-如果开始-结束日期是星期三,则获取星期的最后一个日期

来自分类Dev

在PySpark中将一年中的星期转换为日期

来自分类Dev

如何使用用户输入的日期获取一年中的星期

来自分类Dev

如何使用“日期”命令显示一年中的星期几?

来自分类Dev

Java日期转换:返回一年中的不同星期

来自分类Dev

查找一年中所有星期日的日期的脚本

Related 相关文章

  1. 1

    如何获得一年中所有星期的所有开始日期

  2. 2

    在 SQL 中,如何根据开始日期和经过的天数计算一年中的天数

  3. 3

    使用php pdo为一年中的每个日期添加一行

  4. 4

    多个“开始日期时间”和“结束日期时间”。为开始日期时间和结束日期时间之间的每个日期生成一个新行

  5. 5

    如何确定从日期算起一年中的星期?

  6. 6

    如何选择一年中的每个星期一日期和每个星期五日期

  7. 7

    从日期开始计算一年中的哪一天

  8. 8

    PHP日期获取每个期间的开始日期和结束日期

  9. 9

    从日期获取星期开始日期和星期结束日期

  10. 10

    一年中的同月PHP的加入日期

  11. 11

    查找星期开始和结束日期

  12. 12

    SQL过滤掉任何一年中的特定月份,日期和时间

  13. 13

    jQuery ui datepicker中的一年的开始日期

  14. 14

    在Sybase中获取当前星期的开始和结束日期

  15. 15

    将一年中的日期转换为日期

  16. 16

    将一年中的日期转换为日期

  17. 17

    如何从一年中的日期获取日期

  18. 18

    R选择一年中具有> 2个相似开始日期的电子邮件地址

  19. 19

    日期范围中的开始和结束日期

  20. 20

    Bootstrap中的开始日期和结束日期

  21. 21

    AngularJS中的开始日期和结束日期

  22. 22

    日期范围中的开始和结束日期

  23. 23

    尝试列出一年中的所有星期一及其日期

  24. 24

    PHP-如果开始-结束日期是星期三,则获取星期的最后一个日期

  25. 25

    在PySpark中将一年中的星期转换为日期

  26. 26

    如何使用用户输入的日期获取一年中的星期

  27. 27

    如何使用“日期”命令显示一年中的星期几?

  28. 28

    Java日期转换:返回一年中的不同星期

  29. 29

    查找一年中所有星期日的日期的脚本

热门标签

归档