今天的一个小需求 就是短信接口的调用 要在规定的时间内 17:00----09:00 以及周六日的时候全天都能接收到短信的提醒 就写了一个的脚本。
1 先说下在17:00—09:00这个 如下代码
$time = time(); // 获取当前日期的时间戳
$newtime = date('Y-m-d'); // 获取当天凌晨的格式化时间
$ctime = strtotime(date($newtime.'17:00'.':00'));
$etime = strtotime(date($newtime.'09:00'.':00'));
if($time >= $ctime || $time <= $etime) {
echo 1;die;
}else{
echo '-1';die
}
上面的日期 可以自己设置。
2判断当天是否是在周六日
if(date('w',time()) == '6' || date('w',time()) == ‘0’ ) {
echo '当前是双休日';die;
}else{
echo '当前非双休日';die;
}
函数里面 小写w代表的是周几 。
扩展:
获取今天 明天 昨天的日期 以及以后的日期
echo '今天:'.date('Y-m-d').'<br>';
echo '昨天:'.date('Y-m-d',strtotime('-1 day')).'<br>';
echo '明天:'.date('Y-m-d',strtotime('+1 day')).'<br>';
echo '一周后:'.date('Y-m-d',strtotime('+1 week')).'<nr>';
echo '一周零两天四小时两秒后:'.date('Y-m-d H:i:s',strtotime('+1 week 2days 4hours 2 seconds')).'<br>';
echo '下个星期四:'.date('Y-m-d',strtotime("next Thursday")).'<br>';
echo '上个周一:'.date('Y-m-d',strtotime('last Monday')).'<br>';
echo '一个月前:'.date('Y-m-d',strtotime('last month')).'<br>';
echo '一个月后:'.date('Y-m-d',strtotime('+1 month')).'<br>';
echo '十年后:'.date('Y-m-d',strtotime('+10 year')).'<br>'
data() 函数的语法如下:
string date ( string $format [, int $timestamp ] );
format : 必需,规定输出日期字符串的格式
timestamp : 可选,规定整数的 Unix 时间戳。默认是当前的本地时间 time()
返回值是格式化后的时间字符串
// 假定今天是:March 10th, 2001, 5:16:18 pm
$today = date("Y-m-d H:i:s"); // 2001-03-10 17:16:18 (MySQL DATETIME 格式)
$today = date("F j, Y, g:i a"); // March 10, 2001, 5:16 pm
$today = date("m.d.y"); // 03.10.01
$today = date("j, n, Y"); // 10, 3, 2001
$today = date("Ymd"); // 20010310
$today = date('h-i-s, j-m-y, it is w Day z '); // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'); // It is the 10th day.
$today = date("D M j G:i:s T Y"); // Sat Mar 10 15:16:08 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h'); // 17:03:17 m is month
$today = date("H:i:s"); // 17:16:17
date('Y'); // 当前年份
date('m'); // 当前月份
date('d'); // 当前是几号