기본사항
기본 날짜 함수
date()
array getdate ([int timestamp]);
seconds : 초, 숫자
minutes : 분, 숫자
hours : 시간, 숫자
mday : 날짜, 숫자
wday : 요일, 숫자
mon : 월, 숫자
year : 연도, 숫자
yday : 현재 날짜를 일년 중 몇 번째 날인지 표시, 숫자
weekday : 요일, 문자열
month : 월, 문자열
0 : 타임스템프, 숫자
날짜의 유효성 확인하기
int checkdate (int month, int day, int year)
checkdate(2, 29, 2008) : true
checkdate(2, 29, 2007) : false
마이크로초 사용하기
echo number_format(microtime(true), 10, '.' , '');
달력함수 사용하기
$id = gregoriantojd (9, 18, 1582);
echo jdtojulian($id);
출처 : 성공적인 웹 프로그래밍 PHP와 MySQL (정보문화사)
$ymd_prev = date('ymd',strtotime('-12 day'));
$ymd_next = date('ymd',strtotime('+20 day'));
$today = date("ymd");
$nowday = substr($start_date,2,6);
$colname = "g$nowday";
echo "<td width=20 align=center>".substr($nowday,2,2). "/<BR>" . substr($nowday,4,2)."</td>";
$time = strtotime("20" . $nowday);
$nowday = date("ymd",strtotime("+1 day", $time));
참고문서 :
http://sadtear.tistory.com/76
○ 전월 1일, 전월 말일 구하기
$y = date('Y');
$t = time() - date("d")*86400;
$m = date( "m", $t );
$s = 1;
$l = date( "d", $t);
$date1 = $y . $m . "01";
$date2 = $y . $m . "$l";
PHP에서 시간을 표시하는 방법은 기본적으로 time() 함수를 쓴다.
echo time();
결과
1236836321
이걸 년, 월, 일 형식으로 표시하려면
echo date("Y-m-d", time());
결과
2009-03-12
Y는 년
m은 월
d는 일
H는 시
i는 분
s는 초
대소문자를 구분하며
echo date("Y-m-d H:i:s", time());
결과는
2009-03-12 14:42:13
문자를 조금 바꿔서
echo date("Y년m월d일 H시i분s초", time());
의 결과는
2009년03월12일 14시43분23초
그런데 반대로
2009-03-12 를 time();함수처럼 초단위 숫자로 바꾸려면??
strtotime을 쓰면 됩니다.
$date = "2009-03-12";
$strdate = strtotime($date);
echo $strdate."<br>";
echo date("Y-m-d", $strdate);
결과는
1236783600 <== echo $strdate;
2009-03-12 <== echo date("Y-m-d", $strdate);
이렇습니다!