我知道有类似的帖子关于如何在PHP的最后一个星期四,但我不希望上周四比较当前日期,但上周四比较给定日期。
例如我有一个日期dd / mm / yyyy,我希望在此日期之前的星期四。 输入是一个String(字符串yymmdd的格式),我要解析它以获取此日期之前的星期四。
感谢您的帮助
答案 0 :(得分:8)
//Assumes it's strtotime parsable, you may need to insert
// slashes with your given format eg (and use 4 digit years)
$given=strtotime($dtstring);
//It's just that easy ;)
$thuBefore=strtotime("last thursday",$given);
请注意,这将始终是 last 星期四,这意味着如果给定日期是星期四,它会提前7天报告(但如果日期是星期五,它只会提前一天报告)。
答案 1 :(得分:3)
$day = date('w', $yourTime);
$time = $yourTime - ($day > 4 ? ($day - 4) : ($day + 7 - 4)) * 3600 * 24;
$yourTime
和$time
都是Unix时间戳。
编辑: @ Rudu的解决方案更简单,你应该坚持下去:)!