PHP计算上一个月最后一天、当月最后一天、下一个月最后一天

本文介绍如何使用PHP函数获取上个月、当月、下个月的最后一天。通过简单的代码示例,展示如何利用strtotime和date函数组合实现跨月日期计算。

上个月最后一天:

$last_month_last_day = date('Y-m-t',strtotime('-1 month'));

当月最后一天:

$first_day=date('Y-m-01',time());
$this_month_last_day=date("Y-m-d",strtotime("$first_day +1 month -1 day"));

下月最后一天:

$first_day=date('Y-m-01',time());
$next_month_last_day=date("Y-m-d",strtotime("$first_day +2 month -1 day"));

 

转载于:https://www.cnblogs.com/dreamysky/p/5914778.html

获取当月最后一天有多种实现方式,以下分别介绍 PHP 和 JavaScript 的实现方法。 在 PHP 中,可以使用 `date` 和 `strtotime` 函数来获取当月最后一天,代码如下: ```php echo date('Y-m-t'); ``` 这里 `'Y-m-t'` 中的 `t` 代表当月最后一天,`strtotime` 函数结合 `date` 函数可以方便地进行日期格式化和计算。 在 JavaScript 中,有不同的代码示例可以实现获取当月最后一天。一种方式是在 Vue 项目中的方法,代码如下: ```javascript // 获取当月一天当月最后一天 getmonthday(val) { var myDate = new Date() var currentMonth = myDate.getMonth() var firstDay = new Date(myDate.getFullYear(), currentMonth, 1) var lastDay = new Date(firstDay.getFullYear(), currentMonth + 1, 0) if (val == 'firstDay') { // 当月一天 return this.dateTimeFormatter(firstDay) } else if (val == 'lastDay') { // 当月最后一天 return this.dateTimeFormatter(lastDay, "yyyy-MM-dd") + " " + "23:59:59" } }, dateTimeFormatter(val, datefmt) { var date = new Date(val); return date.pattern(datefmt || 'yyyy-MM-dd HH:mm:ss'); } ``` 在这个示例中,通过 `new Date(myDate.getFullYear(), currentMonth + 1, 0)` 来获取当月最后一天,将月份加 1 并将日期设为 0,JavaScript 会自动将其转换为上一个月最后一天。 还有另一种 JavaScript 示例用于计算合同到期时间时获取日期,虽然重点不是获取当月最后一天,但也涉及日期计算: ```javascript let contract = { contractStartDate: '2020-09-10', // 合同签订日期 contractPeriod: '5年' // 合同年限 } let contractStartDate = new Date(contract.contractStartDate), // 获取合同签订日期 contractPeriod = contract.contractPeriod.substring(0, contract.contractPeriod.length - 1); // 截取年份数字 contract.contractEndDate = new Date( contractStartDate.getFullYear() + Number(contractPeriod), contractStartDate.getMonth(), contractStartDate.getDate() - 1 ); // 获取合同到期日期 ``` 此示例中主要是根据合同签订日期和年限计算合同到期日期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值