在2周内在PHP中获取日期

ano*_*123 11 php datetime

$addhr = time() + (1 * 13 * 60 * 60);
$curDateTimeMil= date("Y-m-d G:i:s",$addhr);
echo $curDateTimeMil; 
Run Code Online (Sandbox Code Playgroud)

这将是回声2010-08-27 16:21:31.

如何在2周后获得日期?(9月10日)

jen*_*ram 25

$dateInTwoWeeks = strtotime('+2 weeks');
Run Code Online (Sandbox Code Playgroud)

strtotime().


更新#1:是的,这是一种懒惰的方式.但是,我确实认为可能的负面性能影响可以通过对可读性/理解代码的积极影响来抵消.如果性能成为问题,可以切换到本机(基于整数)时间操作(并添加注释).


更新#2:可选的第二个参数是参考日期.例如:

strtotime('+2 weeks', mktime(0, 0, 0, 2, 8, 1984)); // 8th Feb. 1984 + 2 weeks
Run Code Online (Sandbox Code Playgroud)

  • 通过接受您之前的一些问题的答案:-)或阅读文档.或者使用`time()`. (4认同)

sha*_*mar 5

您可以使用指定开始时间(从何处计算)mktime().

示例:2010年9月10日后两周(即+14天):

 $date = date("Y-m-d", mktime(0, 0, 0, 9, 10 + 14, 2010);
Run Code Online (Sandbox Code Playgroud)

从今天开始两周后(+14天)的DATE(不是时间):

 $date = date("Y-m-d", mktime(0, 0, 0, date("m"), date("d")+14, date("Y")));
Run Code Online (Sandbox Code Playgroud)

从现在开始,两周后(+14天)的时间为:

 $date = date("Y-m-d G:i:s", mktime(date("G"), date("i"), date("s"), date("m"), date("d")+14, date("Y")));
Run Code Online (Sandbox Code Playgroud)