我想更改输入并将默认日期添加为上个月的第一天和最后一天。
例如-当我们有十二月的某天时,我想输入日期01.11和30.11。但是当我们有二月的某天时,我想输入日期01.02和28.02(或29.02)。
我目前的表单代码:
<form action="generate.php" method="post">
First day: <input type="date" name="start_date" value="2018-12-01">
Last day: <input type="date" name="end_date" value="2018-12-31">
<button>Generate it!</button>
</form>
你有什么主意吗? :)
答案 0 :(得分:2)
如果您想要上个月的第一天和最后一天,那么这应该对您有用:
$curDate=date(Y-m-d);
$month=intval(date(m))-1;
$year=intval(date(Y));
if($month==00){ //case current month januar
$startDate=($year-1)."-12-01";
$endDate=($year-1)."-12-31";
}
else{ //differating by month
$startDate=$year."-".$month."-01";
if($month==1||$month==3||$month==5||$month==7||$month==8||$month==10)
$endDate=$year."-".$month."-31";
else if($month==2)
$endDate=$year."-2-28";
else
$endDate=$year."-".$month."-30";
}
答案 1 :(得分:1)
在我看来,最简单的答案是以下代码:
$startDate = new DateTime("first day of previous month");
$endDate = new DateTime("last day of previous month");
答案 2 :(得分:0)
<?php
$minDate = date('01-m-Y');
$currentDate = date('d-m-Y');
$maxDate = date("Y-m-t", strtotime($currentDate));
$calculatedDate = date('d-m-Y',strtotime(date("d-m-Y", strtotime(date("d-m-Y"))). " + 10 weekdays"));
?>
希望这会有所帮助:)