2014-01-12 3 views
0

strtotime이 올바르게 구문 분석하지 않기 때문에 표준이 아닐 수있는 날짜 형식으로 작업하고 있습니다. 형식은 Sun Nov 16 10:10:10 GMT 2010입니다. 내가 2010-11-16date('Y-m-d', strtotime($date)을 사용하여 변환하려하지만 작동하지 않습니다. 원래의 날짜 문자열을 수정하여 표준 형식에 가까워 질 수있는 방법이 있습니까? strtotime을 받아 들일 수 있습니까?이 날짜 형식을 변환하는 중

+3

[날짜 시간 :: createFromFormat는()는 (http://www.php.net/manual/en/datetime.createfromformat.php)는 –

답변

3

http://php.net/manual/en/function.strtotime.php

기능은 영어 날짜 형식을 포함하는 문자열을 부여하고 유닉스 타임 스탬프에 해당 형식 (1970 0시 년 1 월 1 일 이후 경과 한 시간 (초) 수를 분석하려고합니다 기대 : 00 UTC). 현재 제공된 시간은 이고 현재 제공되지 않으면 현재 시간입니다.

편집 나는 당신이 날짜 클래스 찾고있는 것을 달성 할 것으로 예상


http://www.php.net/manual/en/class.datetime.php

편집 2

@ 마크 베이커 주석으로, 가장 이 링크에서 볼 수있는 올바른 기능은 DateTime::createFromFormat입니다.
,http://www.php.net/manual/en/datetime.createfromformat.php

+1

는 '날짜 시간 :: createFromFormat'는 모두 길 앞으로 – qooplmao

+1

덕분이다 답변. 결과적으로이 문자열은'strtotime'과 호환되지만, 코드에서 호환되지 않는 방식으로 문자열을 분할하는 오류가있었습니다. – sameold

0

strtotime()은 형식 Sun Nov 16 10:10:10 GMT 2010을 구문 분석하는 방법을 알고 수행하고 올바르게 구문 분석됩니다. 귀하의 예제와 demo

문제는 해당 날짜 2010-11-16 일요일 아니다이지만, 화요일은 2010-11-21입니다 first Sunday from date 2010-11-16을받을 이유 이잖아. demo

DateTime::createFromFormatstrtotime()과 동일한 날짜를 반환합니다. demo

관련 문제