<?php
date_default_timezone_set('PRC');
/**
* 获取最近一周,一个月,一年
* */
function getLatelyTime($type = ''){
$now = time();
$result = [];
if($type == 'week'){
//最近一周
for($i=0;$i<7;$i++){
$result[] = date('Y-m-d',strtotime('-'.$i.' day', $now));
}
}elseif($type == 'month'){
//最近一个月
for($i=0;$i<30;$i++){
$result[] = date('Y-m-d',strtotime('-'.$i.' day', $now));
}
}elseif($type == 'year'){
//最近一年
for($i=0;$i<12;$i++){
$result[] = date('Y-m',strtotime('-'.$i.' month', $now));
}
}
return $result;
}
echo '<pre>';
print_r(getLatelyTime('year'));
?>
php 获取时间(今天,昨天,三天内,本周,上周,本月,三年内,半年内,一年内,三年内)
- <?php
-
-
-
-
-
-
-
- $q = $_GET['q'] ? intval($_GET['q']) : 0;
-
- $text = '';
- $now = time();
-
- if ($q === 1) {
- $text = '今天';
- $beginTime = date('Y-m-d 00:00:00', $now);
- $endTime = date('Y-m-d 23:59:59', $now);
- } elseif ($q === 2) {
- $text = '昨天';
- $time = strtotime('-1 day', $now);
- $beginTime = date('Y-m-d 00:00:00', $time);
- $endTime = date('Y-m-d 23:59:59', $now);
- } elseif ($q === 3) {
- $text = '三天内';
- $time = strtotime('-2 day', $now);
- $beginTime = date('Y-m-d 00:00:00', $time);
- $endTime = date('Y-m-d 23:59:59', $now);
- } elseif ($q === 4) {
- $text = '本周';
- $time = '1' == date('w') ? strtotime('Monday', $now) : strtotime('last Monday', $now);
- $beginTime = date('Y-m-d 00:00:00', $time);
- $endTime = date('Y-m-d 23:59:59', strtotime('Sunday', $now));
- } elseif ($q === 5) {
- $text = '上周';
-
- $thisMonday = '1' == date('w') ? strtotime('Monday', $now) : strtotime('last Monday', $now);
-
- $lastMonday = strtotime('-7 days', $thisMonday);
- $beginTime = date('Y-m-d 00:00:00', $lastMonday);
- $endTime = date('Y-m-d 23:59:59', strtotime('last sunday', $now));
- } elseif ($q === 6) {
- $text = '本月';
- $beginTime = date('Y-m-d 00:00:00', mktime(0, 0, 0, date('m', $now), '1', date('Y', $now)));
- $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));
- } elseif ($q === 7) {
- $text = '三月内';
- $time = strtotime('-2 month', $now);
- $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, date('m', $time), 1, date('Y', $time)));
- $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));
- } elseif ($q === 8) {
- $text = '半年内';
- $time = strtotime('-5 month', $now);
- $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, date('m', $time), 1, date('Y', $time)));
- $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, date('m', $now), date('t', $now), date('Y', $now)));
- } elseif ($q === 9) {
- $text = '一年内';
- $beginTime = date('Y-m-d 00:00:00', mktime(0, 0,0, 1, 1, date('Y', $now)));
- $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, 12, 31, date('Y', $now)));
- } elseif ($q === 10) {
- $text = '三年内';
- $time = strtotime('-2 year', $now);
- $beginTime = date('Y-m-d 00:00:00', mktime(0, 0, 0, 1, 1, date('Y', $time)));
- $endTime = date('Y-m-d 23:39:59', mktime(0, 0, 0, 12, 31, date('Y')));
- }
-
- echo $text;
- echo '<br />';
- echo $beginTime;
- echo '<br />';
- echo $endTime;
- ?>
PHP获取上周、本周、上月、本月、本季度、上季度时间方法大全
//开发过程中,常用日期处理函数,时间戳处理函数等,如下讲解:
<?php
echo date('Y-m-d h:i:s',time());
echo date('Y-m-d',time());
echo date('Y-m-d',strtotime(date('Y-m-d', time()-86400)));
echo date('Ymd',time());
echo date('m-d',time());
echo str_replace("-","月",date('m-d',time()-date('w',time())*86400))."日";
echo date('w',time());
echo time();
echo strtotime(date('Y-m-d',time()));
echo date('Y-m-d',strtotime(date('Y-m-d', time()))-date('w',strtotime(date('Y-m-d', time())))*86400);
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
$beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
$endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
$beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
$endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
$beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
$endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
<?php
echo date("Ymd",strtotime("now")), "\n";
echo date("Ymd",strtotime("-1 week Monday")), "\n";
echo date("Ymd",strtotime("-1 week Sunday")), "\n";
echo date("Ymd",strtotime("+0 week Monday")), "\n";
echo date("Ymd",strtotime("+0 week Sunday")), "\n";
echo "*********第几个月:";
echo date('n');
echo "*********本周周几:";
echo date("w");
echo "*********本月天数:";
echo date("t");
echo "*********";
echo '<br>上周起始时间:<br>';
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1-7,date("Y"))),"\n";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y"))),"\n";
echo '<br>本周起始时间:<br>';
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y"))),"\n";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))),"\n";
echo '<br>上月起始时间:<br>';
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m")-1,1,date("Y"))),"\n";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y"))),"\n";
echo '<br>本月起始时间:<br>';
echo date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),1,date("Y"))),"\n";
echo date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("t"),date("Y"))),"\n";
$season = ceil((date('n'))/3);
echo '<br>本季度起始时间:<br>';
echo date('Y-m-d H:i:s', mktime(0, 0, 0,$season*3-3+1,1,date('Y'))),"\n";
echo date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y'))),"\n";
$season = ceil((date('n'))/3)-1;
echo '<br>上季度起始时间:<br>';
echo date('Y-m-d H:i:s', mktime(0, 0, 0,$season*3-3+1,1,date('Y'))),"\n";
echo date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y'))),"\n";
?>