티스토리 뷰
php date()함수를 사용해서 날짜 계산하기, 이해하면 너무 쉬움...
언제나 쉽게 프로그램을 할 수는 없지만, 원리를 알고 사용한다면 정말 멋진 프로그램을 노력여하에 따라 만들 수 있지요.
날짜를 여러가지 형태로 조작(?) 응용하려면 날짜에 대한 연산을 생각해 볼 수 있는데요,
날짜를 마음대로 만질 수 있다면 어느새 우리는 멋진 프로그래머가 되어있을지도 모르겠네요.
<?php
$datetmp='2019-07-27';
echo date('Y년 m월 d일',$datetmp);
?>
이렇게 실행하면 에러가 날 것입니다. 컴퓨터가 기억하는 날짜의 형태는 유닉스 타임으로 기억할거예요.
그래서 strtotime()함수가 필요합니다. 이걸로 변환 후 연산하고 다시 데이터 형식에 맞게 표현해주면 되는데요,
아무래도 컴퓨터가 알아먹을 수 있는 형태로 바꿔주고 다시 해독하고 하는 암호화 복호화 같은 작업입니다.
위의 예문에서 중간에 $datetmp=strtotime($datetmp); 이 문장이 들어간다면 에러가 해결되는 것이지요.
그럼, 날짜를 더하고 빼고 하는 연산 방법은?
1) 하루를 더하고 싶다?
그러면 $datetmp=strtotime($datetmp.'+1 days');
이렇게 하면 감쪽같이 원하는 하루가 더해서 나옵니다. 엄청신기합니다. 처음엔 말이죠.
결과적으로 +,- 연산자와 뒤에 표현은
"year, days,month,hour,second"으로 하면되는데,
유일하게 days만 복수네요... 만든사람이 이렇게 정의한 듯 싶어요~~ 약간 엉뚱하죠?
아뭏튼 실제 프로그램에 적용해서 성공했어요.
if($todate=="")
{
$todate=substr(date("Y-m-d",time()),0,4) . "-12-31" ;
$Transtodate=strtotime($todate.'+1 days');
$Transtodate=date("Y-m-d",$Transtodate);
Console_log($Transtodate);
}
else
{
$Transtodate=strtotime($todate.'+1 days');
$Transtodate=date("Y-m-d",$Transtodate);
Console_log($Transtodate);
}
'IT tech Coding > php' 카테고리의 다른 글
php substr 함수 사용시 한글깨짐 현상 해결법 연구 (0) | 2019.10.07 |
---|---|
php, 배열선언 배열에 값넣기 등 배열관련 정보 (0) | 2019.09.15 |
php, include vs require 변수전달 하는 법 (0) | 2019.07.21 |
php, php에서 자바스크립트 함수를 호출하는 방법에 대한 연구 (0) | 2019.07.21 |
php 이미지파일 업로드 하고 다시 화면에 보여주기 (0) | 2019.07.14 |
- Total
- Today
- Yesterday
- Bootstrap 5
- #프로그램설치
- 엑셀입력보호
- 스크립트작성기초
- json파일편하게보는법
- 엑셀셀보호
- 티스토리챌린지
- 엑셀보호
- 오블완
- json파일형태보기
- chatGPT3.5파이썬버전
- 구글드라이브API
- #InstallForge
- coalesce는 한국어로 "코얼레스크" 또는 "코얼리스"
- 테크에능한여성
- 도면자동생성
- 코딩효율성
- isset을 적용해야 하는 이유
- 1. #웹개발 2. #로트번호 3. #성적서보기 4. #ajax 5. #jquery 6. #php 7. #프론트엔드 8. #백엔드 9. #부트스트랩 10. #웹기능구현
- General error: 2031
- 캐드자동작도
- 코딩튜토리얼
- ajax오류메시지
- sql문장 날짜계산
- #파이썬패키징
- 효율적코딩방법
- 오토핫키가이드
- 파이썬코드줄바꿈방법
- 프로그래머생활
- 뫄프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |