检查当前周是否包含该月的最后一个星期五

时间:2014-04-19 20:06:04

标签: php

我正在尝试创建一个脚本,如果当月的最后一个星期五是在当前一周内,它将更改页面上的图像。

例如,如果我在一周中的任何一天(星期一到星期日)中包含该星期的最后一个星期五,那么我将获得与该月剩余时间不同的输出。但是我在此基础上提出了另一个问题,并提出类似的问题:

$last_friday = strtotime('last Friday of this month');

if (date("Y-m-d") == date("Y-m-d", $last_friday)) {

$output = "<img src='payday.jpg' />";

} else {

$output = "<img src='nomoneyyet.jpg' />;

}

但经过测试后,它在实际的一周内无效。 strtotime我应该使用什么?

2 个答案:

答案 0 :(得分:2)

在PHP中使用DateTime类和格式输出进行比较:

// Be sure to check your timezone `date_default_timezone_set`
$today       = new DateTime();
$last_friday = new DateTime('last Friday of this month');

// For testing
$friday_april = new DateTime('2014-4-25');

if ($today->format('Y-m-d') === $last_friday->format('Y-m-d')) {
  print 'Today is friday';
}

if ($friday_april->format('Y-m-d') === $last_friday->format('Y-m-d')) {
  print 'Yes, a test friday is also a friday';
}

答案 1 :(得分:0)

将DateTime用作

$date = new DateTime();
$date->modify('last friday of this month');

$current_date = new DateTime() ;

if($date == $current_date){
  $output = "<img src='payday.jpg' />";
}else{
  $output = "<img src='nomoneyyet.jpg' />";
}