[PHP] 문자열을 날짜와 시간으로 바꾸어 주는 strtotime 함수

#PHP 를 이용해 날짜나 시간 작업을 하다보면 반드시 사용해야 하는 함수가 바로 #strtotime 함수입니다.

strtotime 함수

#strtotime 함수는 문자열 형식으로 표현된 날짜와 시간을 실제 날짜와 시간 형식으로 변환해주는 역할을 합니다.

예를 들어 어떤 변수에 “2019-01-23 14:00:12” 라는 값이 문자열(string) 형식으로 들어가 있다고 합시다. 이 변수를 이용해 날짜만 추출하기 위해 #date 함수를 이용하려고 하면 분명 에러가 날 것입니다. 이때 #strtotime 함수를 이용해 먼저 해당 값을 날짜 형식으로 바꾸어 주어야 date 함수를 이용 할 수 있습니다.

기본 사용 방법

#strtotime 함수의 기본 사용 방법은 아래와 같습니다.

strtotime( $time, [$now] );

뒤에 들어가는 $now 인수는 넘어가고 $time 인수에 형식을 변환할 날짜와 시간만 넣어 주면 됨을 기억하면 됩니다. 결론적으로 아래와 같이 사용하면 됩니다.

strtotime( "2019-01-23 14:00:12" )

실전 예제

#워드프레스 에서 $post 에 들어 있는 특정 포스트의 정보 중 포스트 발행일 정보를 추출하여 날짜만 표시 하기 위해서는 아래와 같이 작업하면 됩니다.

$postdate = $post->post_date;
$postdate = strtotime( $postdate );
$postdate = date( 'Y-m-d', $postdate );
echo $postdate;

위 작업을 더욱 간단하게 실행하는 방법은 아래와 같습니다.

echo date( 'Y-m-d', strtotime( $post->post_date ) );

참고

끝.