PHP-如何使用$timestamp检查今天是星期一还是一月一日?
我一直在网上浏览这些例子,我发现它们有点神秘或过分 我需要做的是这样的事情:PHP-如何使用$timestamp检查今天是星期一还是一月一日?,php,timestamp,Php,Timestamp,我一直在网上浏览这些例子,我发现它们有点神秘或过分 我需要做的是这样的事情: $timestamp = time(); 然后看看这一天是星期一还是一个月的第一天 我确信这是可能的,我只是不确定如何做到这一点。您可以使用: 实际上,您不需要timestamp变量,因为: 从php.net的函数中执行: 使用返回根据给定格式字符串格式化的字符串 给定的整数时间戳或当前时间(如果没有时间戳) 鉴于换句话说,timestamp是可选的,默认为值 关于时间() 这会抓住。。周一从mysql $monda
$timestamp = time();
然后看看这一天是星期一还是一个月的第一天
我确信这是可能的,我只是不确定如何做到这一点。您可以使用:
实际上,您不需要timestamp变量,因为: 从php.net的函数中执行: 使用返回根据给定格式字符串格式化的字符串 给定的整数时间戳或当前时间(如果没有时间戳) 鉴于换句话说,timestamp是可选的,默认为值 关于时间()
这会抓住。。周一从mysql
$monday = 1; //tuesday= 2.. sunday = 7
AND $monday = (date_format(from_unixtime(your_date_column),'%w'))
或者几天
$day = 1; ///1st in month
AND $day = (date_format(from_unixtime(your_date_column),'%d'))
只是想知道
$date = date("d"); //1st?
$dayinweek = date("w"); //monday? //as a number in a week what you need more then just "Monday" I guess..
这应该解决这个问题:
$day = date('D');
$date = date('d')
if($day == Mon){
//Code for monday
}
if($date == 01){
//code for 1st fo the month
}
else{
//not the first, no money for you =/
}
因为$date可以是周一或周日。应该检查它
public function getWeek($date){
$date_stamp = strtotime(date('Y-m-d', strtotime($date)));
//check date is sunday or monday
$stamp = date('l', $date_stamp);
if($stamp == 'Mon'){
$week_start = $date;
}else{
$week_start = date('Y-m-d', strtotime('Last Monday', $date_stamp));
}
if($stamp == 'Sunday'){
$week_end = $date;
}else{
$week_end = date('Y-m-d', strtotime('Next Sunday', $date_stamp));
}
return array($week_start, $week_end);
}
由于PHP>=5.1可以使用
date('N')
,它返回一周中某一天的ISO-8601数字表示,其中1是星期一,7是星期日
所以你可以
if(date('N', $timestamp) === '1' || date('j', $timestamp) === '1')) {
echo "Today it is Monday OR the first of the month";
}
您需要根据星期一或第一天查询数据,或者只是为了找出是第一天还是星期一?;)@我只想知道今天是星期一吗?另外,我想知道今天是不是本月的第一天。基本上,每周和每月都需要发送提醒,这就是我需要这些提醒的原因。对不起,有点困惑,我如何才能将“本月第一天”输入到该函数中?按字面意思写
“本月第一天”
。Strotime接受这些。谷歌it:)如果(日期('w',$timestamp)=='1')更好,为什么更好?解释一下。”D'格式字符更容易让人阅读。我认为在某些语言环境中,date('D')
的结果可以是星期一,但不能读为'Mon'
。此外,您的代码并不真正关心它是否是人类可读的,它希望在周一与否时做出正确的反应。
public function getWeek($date){
$date_stamp = strtotime(date('Y-m-d', strtotime($date)));
//check date is sunday or monday
$stamp = date('l', $date_stamp);
if($stamp == 'Mon'){
$week_start = $date;
}else{
$week_start = date('Y-m-d', strtotime('Last Monday', $date_stamp));
}
if($stamp == 'Sunday'){
$week_end = $date;
}else{
$week_end = date('Y-m-d', strtotime('Next Sunday', $date_stamp));
}
return array($week_start, $week_end);
}
if(date('N', $timestamp) === '1' || date('j', $timestamp) === '1')) {
echo "Today it is Monday OR the first of the month";
}