PHP检查日期是否在当前周

Vai*_*ali 6 php wordpress

我使用WordPress作为我的CMS.我想检查我的一些用户是否在本周过生日.没有成功.

这是我的代码

$fd = date("Y-m-d",strtotime('monday this week')); 
$ld = date("Y-m-d",strtotime("sunday this week"));

$cdate = date('m-d',time()); 
if (($cdate >= $fd)  && ($cdate <= $ld)) {
echo 'true';
} else {
echo 'false';
}
Run Code Online (Sandbox Code Playgroud)

如果我使用,这对我来说是假的

  'm-d' in $cdate variable 
Run Code Online (Sandbox Code Playgroud)

如果使用Ymd它可以正常工作但在这种情况下,年份应该是相同的,因为所有人都有不同的出生年份

Sul*_*een 11

这是我的方式

要找到它,你可以这样做

步骤1 :

找到本周的开始和最后一天

$FirstDay = date("Y-m-d", strtotime('sunday last week'));  
$LastDay = date("Y-m-d", strtotime('sunday this week'));  
Run Code Online (Sandbox Code Playgroud)

第2步 :

查看给定日期是否在本周的开始日期和最后一天之间

  if($Date > $FirstDay && $Date < $LastDay) {
       echo "It is Between";
    } else {
        echo "No Not !!!";  
    } 
Run Code Online (Sandbox Code Playgroud)

如果Yes那么它属于ElseNot

所以,最后你应该拥有的代码是

<?php
$Date = "2015-06-01"; #Your Own Date
$Date = date('Y-m-d'); #Or Current Date Fixed here
$FirstDay = date("Y-m-d", strtotime('sunday last week'));  
$LastDay = date("Y-m-d", strtotime('sunday this week'));  
if($Date > $FirstDay && $Date < $LastDay) {
   echo "It is Between";
} else {
    echo "No Not !!!";  
}  
?>
Run Code Online (Sandbox Code Playgroud)

注意

  1. 您可以拥有自己的开始日即,SundayMonday

  2. 您可以拥有自己的日期或当前日期


Ric*_*ard 7

您可以使用format参数W,该参数将为您提供当年(压延周)中当前弱点的数量。

if(date("W") == date("W", $birthday)){
    // User has birthday this week
}
Run Code Online (Sandbox Code Playgroud)

$birthday必须是这里的时间戳。也许您必须使用$birthday = strtotime($birthdate);