想了解php–获取上一个月和下个月的年份的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于php获取上个月第一天的相关问题,此外,我们还将为您介绍关于java获取上一周、上一个月起止时间、Ja
想了解php – 获取上一个月和下个月的年份的新动态吗?本文将为您提供详细的信息,我们还将为您解答关于php获取上个月第一天的相关问题,此外,我们还将为您介绍关于java 获取上一周、上一个月起止时间、JavaScript 或 Jquery - 如何显示本月的最后一周和下个月的第一个星期一、Java获取当前时间的上一个月和下一个月,第一天和最后一天,任意时间的第一天和最后一天,任意时间上一个月和下一个月详解、JS 如何获取当前上一个月、下一个月和月份所含天数的新知识。
本文目录一览:- php – 获取上一个月和下个月的年份(php获取上个月第一天)
- java 获取上一周、上一个月起止时间
- JavaScript 或 Jquery - 如何显示本月的最后一周和下个月的第一个星期一
- Java获取当前时间的上一个月和下一个月,第一天和最后一天,任意时间的第一天和最后一天,任意时间上一个月和下一个月详解
- JS 如何获取当前上一个月、下一个月和月份所含天数
php – 获取上一个月和下个月的年份(php获取上个月第一天)
在我的日历中,我需要将当前年份与上一年和下一年的年份进行比较,以确定月份是否需要重置为1月,并且年份递增/递减.我已经有了这个以获得下一个&前几个月:
$prev_month = date('F',strtotime("last month"));
$next_month = date('F',strtotime("next month"));
有人知道怎么做吗?提前谢谢 – 坦纳.
解决方法:
$next_month_y = date('Y',strtotime("last month"));
$prev_month_y = date('Y',strtotime("next month"));
java 获取上一周、上一个月起止时间
代码:
Calendar cal = Calendar.getInstance();
获取上一周的起止时间:
cal.setFirstDayOfWeek (Calendar.MONDAY);// 将每周第一天设为星期一,默认是星期天
cal.add(Calendar.DATE, -1*7);
cal.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
startDate = DateUtil.format(cal.getTime(), DateUtil.YEAR_MONTH_DAY_PATTERN);
cal.add(Calendar.DATE, 1*7);
cal.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);
endDate = DateUtil.format(cal.getTime(), DateUtil.YEAR_MONTH_DAY_PATTERN);
获取上一个月的起止时间:
cal.add(Calendar.MONTH, -1);
cal.set(Calendar.DAY_OF_MONTH, 1);
startDate = DateUtil.format(cal.getTime(), DateUtil.YEAR_MONTH_DAY_PATTERN);
cal.add(Calendar.MONTH, 1);
cal.set(Calendar.DAY_OF_MONTH, 1);
endDate = DateUtil.format(cal.getTime(), DateUtil.YEAR_MONTH_DAY_PATTERN);
JavaScript 或 Jquery - 如何显示本月的最后一周和下个月的第一个星期一
要检测这是否是本月的最后一周,您可以参考以下示例:
https://www.javatpoint.com/calculate-current-week-number-in-javascript
为了得到下周一,你可以调用这个函数:
getNextMonday(){
var date = new Date();
date.setDate(date.getDate() + (1 + 7 - date.getDay()) % 7);
return date;
}
,
您可以使用以下 JS 代码。它将显示每月最后一周的警报,即从每月最后一个星期一开始。
function Get_Last_Monday_of_Month()
{
var year = new Date().getFullYear();
var month = new Date().getMonth() + 1;
var dat = new Date(year+'/'+month+'/1');
var currentmonth = month;
var firstmonday = false;
while (currentmonth === month)
{
firstmonday = dat.getDay() === 1 || firstmonday;
dat.setDate(dat.getDate()+(firstmonday ? 7 : 1));
currentmonth = dat.getMonth()+1;
}
dat.setDate(dat.getDate()-7);
return dat;
}
function Get_Next_Coming_Monday()
{
var date = new Date();
date.setDate(date.getDate() + (1 + 7 - date.getDay()) % 7);
return date;
}
var d1 = new Date();
var d2 = Get_Last_Monday_of_Month();
var d3 = Get_Next_Coming_Monday();
if (d1.getTime() >= d2.getTime())
{
var datestring = ("0" + d3.getDate()).slice(-2) + "/" + ("0"+(d3.getMonth()+1)).slice(-2) + "/" + d3.getFullYear();
document.write ("Due on " + datestring);
}
Java获取当前时间的上一个月和下一个月,第一天和最后一天,任意时间的第一天和最后一天,任意时间上一个月和下一个月详解
/**
* 获取当前时间
*
* @param args
*/
public static String getNowTime() {
Calendar cal = Calendar.getInstance();
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
String lastMonth = dft.format(cal.getTime());
return lastMonth;
}
/**
* 判断当天是否为本月第一天
*
* @return
*/
public static boolean isFirstDayOfMonth() {
boolean flag = false;
Calendar calendar = Calendar.getInstance();
int today = calendar.get(calendar.DAY_OF_MONTH);
if (1 == today) {
flag = true;
}
return flag;
}
/**
* 获取当前月份最后一天
*
* @param date
* @return
* @throws ParseException
*/
public static String getMaxMonthDate() {
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
// calendar.add(Calendar.MONTH, -1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return dft.format(calendar.getTime());
}
/**
*
* 描述:获取下一个月的第一天.
*
* @return
*/
public static String getPerFirstDayOfMonth() {
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH, 1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
return dft.format(calendar.getTime());
}
/**
*
* 描述:获取上个月的最后一天.
*
* @return
*/
public static String getLastMaxMonthDate() {
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.MONTH, -1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return dft.format(calendar.getTime());
}
/**
* 获取上一个月
*
* @return
*/
public static String getLastMonth() {
Calendar cal = Calendar.getInstance();
cal.add(cal.MONTH, -1);
SimpleDateFormat dft = new SimpleDateFormat("yyyyMM");
String lastMonth = dft.format(cal.getTime());
return lastMonth;
}
/**
*
* 描述:获取下一个月.
*
* @return
*/
public static String getPreMonth() {
Calendar cal = Calendar.getInstance();
cal.add(cal.MONTH, 1);
SimpleDateFormat dft = new SimpleDateFormat("yyyyMM");
String preMonth = dft.format(cal.getTime());
return preMonth;
}
// 是否是最后一天
public static boolean isLastDayOfMonth() {
boolean flag = false;
if (StringUtils.isNotBlank(getNowTime()) && StringUtils.isNotBlank(getMaxMonthDate()) && StringUtils.equals(getNowTime(), getMaxMonthDate())) { // getMaxMonthDate().equals(getNowTime())
flag = true;
}
return flag;
}
/**
* 获取任意时间的下一个月
* 描述:<描述函数实现的功能>.
* @param repeatDate
* @return
*/
public static String getPreMonth(String repeatDate) {
String lastMonth = "";
Calendar cal = Calendar.getInstance();
SimpleDateFormat dft = new SimpleDateFormat("yyyyMM");
int year = Integer.parseInt(repeatDate.substring(0, 4));
String monthsString = repeatDate.substring(4, 6);
int month;
if ("0".equals(monthsString.substring(0, 1))) {
month = Integer.parseInt(monthsString.substring(1, 2));
} else {
month = Integer.parseInt(monthsString.substring(0, 2));
}
cal.set(year,month,Calendar.DATE);
lastMonth = dft.format(cal.getTime());
return lastMonth;
}
/**
* 获取任意时间的上一个月
* 描述:<描述函数实现的功能>.
* @param repeatDate
* @return
*/
public static String getLastMonth(String repeatDate) {
String lastMonth = "";
Calendar cal = Calendar.getInstance();
SimpleDateFormat dft = new SimpleDateFormat("yyyyMM");
int year = Integer.parseInt(repeatDate.substring(0, 4));
String monthsString = repeatDate.substring(4, 6);
int month;
if ("0".equals(monthsString.substring(0, 1))) {
month = Integer.parseInt(monthsString.substring(1, 2));
} else {
month = Integer.parseInt(monthsString.substring(0, 2));
}
cal.set(year,month-2,Calendar.DATE);
lastMonth = dft.format(cal.getTime());
return lastMonth;
}
//
/**
* 获取任意时间的月的最后一天
* 描述:<描述函数实现的功能>.
* @param repeatDate
* @return
*/
private static String getMaxMonthDate(String repeatDate) {
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
try {
if(StringUtils.isNotBlank(repeatDate) && !"null".equals(repeatDate)){
calendar.setTime(dft.parse(repeatDate));
}
} catch (ParseException e) {
e.printStackTrace();
}
// calendar.add(Calendar.MONTH, -1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
return dft.format(calendar.getTime());
}
/**
* 获取任意时间的月第一天
* 描述:<描述函数实现的功能>.
* @param repeatDate
* @return
*/
private static String getMinMonthDate(String repeatDate){
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
Calendar calendar = Calendar.getInstance();
try {
if(StringUtils.isNotBlank(repeatDate) && !"null".equals(repeatDate)){
calendar.setTime(dft.parse(repeatDate));
}
} catch (ParseException e) {
e.printStackTrace();
}
// calendar.add(Calendar.MONTH, -1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
return dft.format(calendar.getTime());
}
/**
* 不论是当前时间,还是历史时间 皆是时间点的前天
* repeatDate 任意时间
*/
public static String getModify2DaysAgo(String repeatDate) {
Calendar cal = Calendar.getInstance();
String daysAgo = "";
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
if (repeatDate == null || "".equals(repeatDate)) {
cal.set(Calendar.DATE, cal.get(Calendar.DATE) - 2);
} else {
int year = Integer.parseInt(repeatDate.substring(0, 4));
String monthsString = repeatDate.substring(4, 6);
int month;
if ("0".equals(monthsString.substring(0, 1))) {
month = Integer.parseInt(monthsString.substring(1, 2));
} else {
month = Integer.parseInt(monthsString.substring(0, 2));
}
String dateString = repeatDate.substring(6, 8);
int date;
if ("0".equals(dateString.subSequence(0, 1))) {
date = Integer.parseInt(dateString.substring(1, 2));
} else {
date = Integer.parseInt(dateString.substring(0, 2));
}
cal.set(year, month-1, date - 1);
System.out.println(dft.format(cal.getTime()));
}
daysAgo = dft.format(cal.getTime());
return daysAgo;
}
/**
* 不论是当前时间,还是历史时间 皆是时间点的T-N天
* repeatDate 任意时间 param 数字 可以表示前几天
*/
public static String getModifyNumDaysAgo(String repeatDate,int param) {
Calendar cal = Calendar.getInstance();
String daysAgo = "";
SimpleDateFormat dft = new SimpleDateFormat("yyyyMMdd");
if (repeatDate == null || "".equals(repeatDate)) {
cal.set(Calendar.DATE, cal.get(Calendar.DATE) - param);
} else {
int year = Integer.parseInt(repeatDate.substring(0, 4));
String monthsString = repeatDate.substring(4, 6);
int month;
if ("0".equals(monthsString.substring(0, 1))) {
month = Integer.parseInt(monthsString.substring(1, 2));
} else {
month = Integer.parseInt(monthsString.substring(0, 2));
}
String dateString = repeatDate.substring(6, 8);
int date;
if ("0".equals(dateString.subSequence(0, 1))) {
date = Integer.parseInt(dateString.substring(1, 2));
} else {
date = Integer.parseInt(dateString.substring(0, 2));
}
cal.set(year, month-1, date - param+1);
System.out.println(dft.format(cal.getTime()));
}
daysAgo = dft.format(cal.getTime());
return daysAgo;
}
JS 如何获取当前上一个月、下一个月和月份所含天数
在数据报表查询中,经常需要设置查询的日期区间,如查询2018-02-01至2018-02-28的整月数据,这时需要提供快捷整月查询按钮: 如:
一般日期年月日之间由“-”或者“/”等符合分割开,简单判断当前月份进行处理即可。另外,如何获取所选月份的最大天数是关键,这里可以借助js自带Date函数来处理,关键在于定位到所选月份的最后一天
关键代码如下:
function changeMonth(type) {
//获取当前输入框内的日期
var s_date = $("input[name=''s_date'']").val();
var e_date = $("input[name=''e_date'']").val();
var arr = s_date.split("-");
var year = parseInt(arr[0]),
month = parseInt(arr[1]),
day = parseInt(arr[2]);
var year2 = year, month2 , day2;
//取上一个月
if(type == ''pre'') {
month2 = month - 1;
if(month2 == 0) { //如当前是一月份
month2 = 12;
year2 = year - 1;
}
} else {
month2 = month + 1;
if(month2 == 13) {
month2 = 1;
year2 = year + 1;
}
}
//输出所选月份的第一天
var start = year2 + "-" + month2 + "-" + "1";
//获取当前
var date = new Date(start);
var year = date.getFullYear();
var month = date.getMonth()+1;
var d = new Date(year,month,0); //下一个月的前一天
var end = year2 + "-" + month2 + "-" + d.getDate();
console.log(start,end);
//设置当前时间input的值
$("input[name=''s_date'']").val(start);
$("input[name=''e_date'']").val(end);
}
今天关于php – 获取上一个月和下个月的年份和php获取上个月第一天的分享就到这里,希望大家有所收获,若想了解更多关于java 获取上一周、上一个月起止时间、JavaScript 或 Jquery - 如何显示本月的最后一周和下个月的第一个星期一、Java获取当前时间的上一个月和下一个月,第一天和最后一天,任意时间的第一天和最后一天,任意时间上一个月和下一个月详解、JS 如何获取当前上一个月、下一个月和月份所含天数等相关知识,可以在本站进行查询。
本文标签: