php获取本周周一、周日时间,上周周一、周日时间,本月第一天,本月最后一天,上个月第一天,最后一天时间
2016-04-16 00:45
816 查看
权声明:本文为博主原创文章,未经博主允许不得转载。
[php] view plain copy
print?
//这个星期的星期一
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function this_monday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$monday_date = date('Y-m-d', $timestamp-86400*date('w',$timestamp)+(date('w',$timestamp)>0?86400:-/*6*86400*/518400));
if($is_return_timestamp){
$cache[$id] = strtotime($monday_date);
}else{
$cache[$id] = $monday_date;
}
}
return $cache[$id];
}
//这个星期的星期天
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function this_sunday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$sunday = this_monday($timestamp) + /*6*86400*/518400;
if($is_return_timestamp){
$cache[$id] = $sunday;
}else{
$cache[$id] = date('Y-m-d',$sunday);
}
}
return $cache[$id];
}
//上周一
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function last_monday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$thismonday = this_monday($timestamp) - /*7*86400*/604800;
if($is_return_timestamp){
$cache[$id] = $thismonday;
}else{
$cache[$id] = date('Y-m-d',$thismonday);
}
}
return $cache[$id];
}
//上个星期天
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function last_sunday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$thissunday = this_sunday($timestamp) - /*7*86400*/604800;
if($is_return_timestamp){
$cache[$id] = $thissunday;
}else{
$cache[$id] = date('Y-m-d',$thissunday);
}
}
return $cache[$id];
}
//这个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function month_firstday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$firstday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp),1,date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($firstday);
}else{
$cache[$id] = $firstday;
}
}
return $cache[$id];
}
//这个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function month_lastday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$lastday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp),date('t',$timestamp),date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($lastday);
}else{
$cache[$id] = $lastday;
}
}
return $cache[$id];
}
//上个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function lastmonth_firstday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$firstday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp)-1,1,date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($firstday);
}else{
$cache[$id] = $firstday;
}
}
return $cache[$id];
}
//上个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function lastmonth_lastday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$lastday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp)-1, date('t',lastmonth_firstday($timestamp)),date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($lastday);
}else{
$cache[$id] = $lastday;
}
}
return $cache[$id];
}
echo '本周星期一:'.this_monday(0,false).'';
echo '本周星期天:'.this_sunday(0,false).'';
echo '上周星期一:'.last_monday(0,false).'';
echo '上周星期天:'.last_sunday(0,false).'';
echo '本月第一天:'.month_firstday(0,false).'';
echo '本月最后一天:'.month_lastday(0,false).'';
echo '上月第一天:'.lastmonth_firstday(0,false).'';
echo '上月最后一天:'.lastmonth_lastday(0,false).'';
[php] view plain copy
print?
//这个星期的星期一
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function this_monday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$monday_date = date('Y-m-d', $timestamp-86400*date('w',$timestamp)+(date('w',$timestamp)>0?86400:-/*6*86400*/518400));
if($is_return_timestamp){
$cache[$id] = strtotime($monday_date);
}else{
$cache[$id] = $monday_date;
}
}
return $cache[$id];
}
//这个星期的星期天
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function this_sunday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$sunday = this_monday($timestamp) + /*6*86400*/518400;
if($is_return_timestamp){
$cache[$id] = $sunday;
}else{
$cache[$id] = date('Y-m-d',$sunday);
}
}
return $cache[$id];
}
//上周一
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function last_monday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$thismonday = this_monday($timestamp) - /*7*86400*/604800;
if($is_return_timestamp){
$cache[$id] = $thismonday;
}else{
$cache[$id] = date('Y-m-d',$thismonday);
}
}
return $cache[$id];
}
//上个星期天
// @$timestamp ,某个星期的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function last_sunday($timestamp=0,$is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$thissunday = this_sunday($timestamp) - /*7*86400*/604800;
if($is_return_timestamp){
$cache[$id] = $thissunday;
}else{
$cache[$id] = date('Y-m-d',$thissunday);
}
}
return $cache[$id];
}
//这个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function month_firstday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$firstday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp),1,date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($firstday);
}else{
$cache[$id] = $firstday;
}
}
return $cache[$id];
}
//这个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function month_lastday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$lastday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp),date('t',$timestamp),date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($lastday);
}else{
$cache[$id] = $lastday;
}
}
return $cache[$id];
}
//上个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function lastmonth_firstday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$firstday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp)-1,1,date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($firstday);
}else{
$cache[$id] = $firstday;
}
}
return $cache[$id];
}
//上个月的第一天
// @$timestamp ,某个月的某一个时间戳,默认为当前时间
// @is_return_timestamp ,是否返回时间戳,否则返回时间格式
function lastmonth_lastday($timestamp = 0, $is_return_timestamp=true){
static $cache ;
$id = $timestamp.$is_return_timestamp;
if(!isset($cache[$id])){
if(!$timestamp) $timestamp = time();
$lastday = date('Y-m-d', mktime(0,0,0,date('m',$timestamp)-1, date('t',lastmonth_firstday($timestamp)),date('Y',$timestamp)));
if($is_return_timestamp){
$cache[$id] = strtotime($lastday);
}else{
$cache[$id] = $lastday;
}
}
return $cache[$id];
}
echo '本周星期一:'.this_monday(0,false).'';
echo '本周星期天:'.this_sunday(0,false).'';
echo '上周星期一:'.last_monday(0,false).'';
echo '上周星期天:'.last_sunday(0,false).'';
echo '本月第一天:'.month_firstday(0,false).'';
echo '本月最后一天:'.month_lastday(0,false).'';
echo '上月第一天:'.lastmonth_firstday(0,false).'';
echo '上月最后一天:'.lastmonth_lastday(0,false).'';
相关文章推荐
- [php-src]理解Php内核中的函数与INI
- PHP DATE 如何取得当月的第一天和最后一天!
- PHP参数类型限制
- PHP与MYSQL学习笔记——简述
- ubuntu14.0 安装Mysql+phpmyadmin
- zend studio中加入对tpl文件支持的设置方法
- PPHStorm 多项目管理
- vsftpd 550 Permission denied 出错解决方案
- php面向对象之类成员
- phpstorm2016.1 添加对Drupal的编程支持
- yii2史上最简单式安装教程,没有之一
- PHP中输出字符串(echo,print,printf,print_r,var_dump)
- FastCgi与PHP-fpm关系
- PHP 文件打开/读取/读取
- php获取文件后缀名
- PHP中try{}catch{}的具体用法详解
- 5. PHP变量的类型(二)
- php下foreach()错误提示Warning: Invalid argument supplied for foreach()
- PHP Curl CURLOPT_POSTFIELDS 1024
- 深入理解php底层:php生命周期