이 글의 내용은 PHP에서 시간을 확보하는 구현 방법에 관한 것입니다. 참고할만한 가치가 있습니다. 도움이 필요한 친구가 참고할 수 있습니다.
요즘 개발 중에 발생하는 시간 문제를 컴파일하여 모두와 공유했습니다. 살펴보고 필요하면 사용할 수 있습니다.
1. 지난 달의 첫날과 마지막 날을 가져옵니다.
echo date('Y-m-01', strtotime('-1 month')); echo "<br/>"; echo date('Y-m-t', strtotime('-1 month')); echo "<br/>";
위 방법에 문제가 있으니 다음과 같이 수정하세요.
지난 달의 첫 번째 날:
echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 month')); // 计算出本月第一天再减一个月
마지막 날 지난 달:
echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 day')); // 计算出本月第一天再减一天
2. 해당 달의 첫 번째 날과 마지막 날을 가져옵니다.
$BeginDate=date('Y-m-01', strtotime(date("Y-m-d"))); echo $BeginDate; echo "<br/>"; echo date('Y-m-d', strtotime("$BeginDate +1 month -1 day")); echo "<br/>";
3. 현재 날짜의 연도, 월, 일 및 일수를 가져옵니다.
echo " 本月共有:".date("t")."天"; echo " 当前年份".date('Y'); echo " 当前月份".date('m'); echo " 当前几号".date('d'); echo "<br/>";
4. 함수와 배열을 사용하여 달의 첫날을 구하고 마지막 날이 더 실용적입니다
function getthemonth($date){ $firstday = date('Y-m-01', strtotime($date)); $lastday = date('Y-m-d', strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); } $today = date("Y-m-d"); $day=getthemonth($today); echo "当月的第一天: ".$day[0]." 当月的最后一天: ".$day[1]; echo "<br/>";
이달의 날짜를 구하세요:
function getMonth($date){ $firstday = date("Y-m-01",strtotime($date)); $lastday = date("Y-m-d",strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); }
$firstday
가 첫 번째 날입니다 $date
가 2018-2인 경우 해당 월의 경우 $firstday
는 2018-02-01
가 되며 다음을 추가합니다. $firstday
를 기준으로 한 달을 2018-03-01
로 계산하고, 하루를 빼면 2018-02-28
이 되기 때문에 너무 편리합니다. date()
및 strtotime()
을 사용하세요. $firstday
是月份的第一天,假如$date
是2018-2这样的话,$firstday
就会是2018-02-01
,然后根据$firstday
加一个月就是2018-03-01
,再减一天就是2018-02-28
,用date()
和strtotime()
真是太方便了。
获取上月日期:
function getlastMonthDays($date){ $timestamp=strtotime($date); $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)-1).'-01')); $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); }
上月日期需要先获取一个时间戳,然后在月份上-1
就OK
了,超智能的date()
会把2018-0-1
这种东西转换成2017-12-01
,太爽了。
获取下月日期:
function getNextMonthDays($date){ $timestamp=strtotime($date); $arr=getdate($timestamp); if($arr['mon'] == 12){ $year=$arr['year'] +1; $month=$arr['mon'] -11; $firstday=$year.'-0'.$month.'-01'; $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); }else{ $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)+1).'-01')); $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); } return array($firstday,$lastday); }
下月日期的代码看起来比较长一点,因为date()
转不了类似2018-13-01
这种东西,它会直接回到1970
,所以前面需要处理一下12
月的问题,除了12
月就直接月份+1
就OK
啦。
总得来说,日期函数太强大了。
这几天在开发的时候遇到的一些时间上的问题,整理了一下,分享给大家,可以看看,有需要的话可以利用一下。
1.获取上个月第一天及最后一天.
echo date('Y-m-01', strtotime('-1 month')); echo "<br/>"; echo date('Y-m-t', strtotime('-1 month')); echo "<br/>";
上面的方法有些问题,做下修改:
上个月第一天:
echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 month'));// 计算出本月第一天再减一个月
上个月最后一天:
echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 day')); // 计算出本月第一天再减一天
2.获取当月第一天及最后一天.
$BeginDate=date('Y-m-01', strtotime(date("Y-m-d"))); echo $BeginDate; echo "<br/>"; echo date('Y-m-d', strtotime("$BeginDate +1 month -1 day")); echo "<br/>";
3.获取当天年份、月份、日及天数.
echo " 本月共有:".date("t")."天"; echo " 当前年份".date('Y'); echo " 当前月份".date('m'); echo " 当前几号".date('d'); echo "<br/>";
4.使用函数及数组来获取当月第一天及最后一天,比较实用
function getthemonth($date){ $firstday = date('Y-m-01', strtotime($date)); $lastday = date('Y-m-d', strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); } $today = date("Y-m-d"); $day=getthemonth($today); echo "当月的第一天: ".$day[0]." 当月的最后一天: ".$day[1]; echo "<br/>";
获取本月日期:
function getMonth($date){ $firstday = date("Y-m-01",strtotime($date)); $lastday = date("Y-m-d",strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); }
$firstday
是月份的第一天,假如$date
是2018-2这样的话,$firstday
就会是2018-02-01
,然后根据$firstday
加一个月就是2018-03-01
,再减一天就是2018-02-28
,用date()
和strtotime()
真是太方便了。
获取上月日期:
function getlastMonthDays($date){ $timestamp=strtotime($date); $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)-1).'-01')); $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); return array($firstday,$lastday); }
上月日期需要先获取一个时间戳,然后在月份上-1
就OK
了,超智能的date()
会把2018-0-1
这种东西转换成2017-12-01
,太爽了。
获取下月日期:
function getNextMonthDays($date){ $timestamp=strtotime($date); $arr=getdate($timestamp); if($arr['mon'] == 12){ $year=$arr['year'] +1; $month=$arr['mon'] -11; $firstday=$year.'-0'.$month.'-01'; $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); }else{ $firstday=date('Y-m-01',strtotime(date('Y',$timestamp).'-'.(date('m',$timestamp)+1).'-01')); $lastday=date('Y-m-d',strtotime("$firstday +1 month -1 day")); } return array($firstday,$lastday); }
下月日期的代码看起来比较长一点,因为date()
转不了类似2018-13-01
这种东西,它会直接回到1970
,所以前面需要处理一下12
月的问题,除了12
月就直接月份+1
就OK
지난 달 날짜 가져오기:
rrreee
지난 달 날짜는 먼저 타임스탬프를 가져온 다음-1
월에 OK
를 가져와야 합니다. smartdate()는 2018-0-1
와 같은 것을 2017-12-01
로 변환하는데, 정말 멋지네요.
rrreee
date()
가 2018-13-01
와 같은 것을 변환할 수 없기 때문에 다음 달 날짜에 대한 코드가 조금 더 길어 보입니다. 뭔가를 심으면 바로 1970
으로 돌아가기 때문에 12
를 제외한 12
개월의 문제를 처리해야 합니다. 달, +1
달만 OK
입니다.
$firstday
가 첫 번째 날입니다 $date
가 2018-2인 경우 해당 월의 경우 $firstday
는 2018-02-01
가 되며 다음을 추가합니다. $firstday
를 기준으로 한 달을 2018-03-01
로 계산하고, 하루를 빼면 2018-02-28
이 되기 때문에 너무 편리합니다. date()
및 strtotime()
을 사용하세요. 🎜🎜🎜이전 달의 날짜 가져오기: 🎜🎜rrreee🎜 이전 달의 날짜는 먼저 타임스탬프를 가져온 다음 -1
월에 OK
를 가져와야 합니다. , 매우 스마트한date()는 2018-0-1
와 같은 것을 2017-12-01
로 변환합니다. 정말 멋지네요. 🎜🎜 🎜다음 달 날짜 가져오기: 🎜🎜rrreee🎜 date()
가 2018-13-01
와 같은 것을 변환할 수 없기 때문에 다음 달 날짜에 대한 코드가 조금 더 길어 보입니다. 뭔가를 심으면 곧바로 1970
으로 돌아가기 때문에 12
를 제외하고 12
개월 전의 문제를 처리해야 합니다. 달, +1
달만 OK
입니다. 🎜🎜 일반적으로 날짜 기능이 너무 강력해요. 🎜🎜관련 권장 사항: 🎜🎜🎜PHP를 사용하여 방문자 IP, 지역 위치, 브라우저 및 소스 페이지 정보 얻기🎜🎜🎜🎜🎜위 내용은 PHP는 메소드 연습을 구현하는 데 시간을 갖습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!