• 쇼핑몰
  • 커뮤니티
  • 북마크

질문과 답변 (채택게시판)

PHP에서 한 날짜 형식을 다른 날짜 형식으로 변환

0
0
로그인 후 추천 / 비추천 가능
총 채택 포인트 500 포인트
채택된 회원에게 주는 후원 포인트 400 포인트
채택 후 작성자(할인의추억) 회수 포인트 100 포인트

본문

PHP에서 한 날짜 형식을 다른 날짜 형식으로 변환하는 간단한 방법이 있습니까?

나는 이것을 가지고있다:

$old_date = date('y-m-d-h-i-s');            // works

$middle = strtotime($old_date);             // returns bool(false)

$new_date = date('Y-m-d H:i:s', $middle);   // returns 1970-01-01 00:00:00

그러나 나는 당연히 균열보다는 오히려 현재 날짜를 돌려 보내는 것을 좋아할 것입니다. 내가 뭘 잘못했을까요?

profile_image
포인트 1,544
경험치 310
[레벨 2] - 진행률 28%
가입일 :
2018-08-10 14:37:02

댓글목록 4

백마탄환자님의 댓글

베스트 1
채택
profile_image
두 번째 매개 변수 date()는 적절한 시간 소인 (1970 년 1 월 1 일 이후의 초)이어야합니다. date ()가 인식 할 수없는 문자열을 전달 중입니다.
strtotime () 을 사용 하여 날짜 문자열을 타임 스탬프로 변환 할 수 있습니다 . 그러나 strtotime ()도 y-m-d-h-i-s형식을 인식하지 못합니다 .

PHP 5.3 이상
사용 DateTime::createFromFormat. date()구문 을 사용하여 정확한 마스크를 지정하여 들어오는 문자열 날짜를 구문 분석 할 수 있습니다.

PHP 5.2 이하
수동으로 요소 (년, 월, 일,시, 분, 초)를 구문 분석하고 substr()결과를 mktime () 에 전달하면 타임 스탬프가 작성됩니다.

그러나 그것은 많은 작업입니다! strftime ()이 이해할 수있는 다른 형식을 사용하는 것이 좋습니다. strftime () 은 짧은 날짜 입력을 인식 합니다the next time joe will slip on the ice . 예를 들면 다음과 같습니다.
$old_date = date('l, F d y h:i:s');              // returns Saturday, January 30 10 02:06:34
$old_date_timestamp = strtotime($old_date);
$new_date = date('Y-m-d H:i:s', $old_date_timestamp);  

피에이치피님의 댓글

profile_image
가장 쉬운 방법은 다음과 같습니다.
$myDateTime = DateTime::createFromFormat('Y-m-d', $dateString);
$newDateString = $myDateTime->format('m/d/Y');

먼저 $ dateString이 들어있는 형식을 지정합니다. 그러면 $ newDateString을 원하는 형식으로 지정합니다.
이것은 또한 strtotime의 사용을 피하는데, 때때로 작동하기 어려울 수 있습니다.
한 날짜 형식에서 다른 날짜 형식으로 변환하지 않고 현재 날짜 (또는 datetime)를 특정 형식으로 지정하려는 경우 더 쉽습니다.
$now = new DateTime();
$timestring = $now->format('Y-m-d h:i:s');

축하합니다. 첫댓글 포인트 85포인트를 획득하였습니다.

백마탄환자님의 댓글

채택
profile_image
두 번째 매개 변수 date()는 적절한 시간 소인 (1970 년 1 월 1 일 이후의 초)이어야합니다. date ()가 인식 할 수없는 문자열을 전달 중입니다.
strtotime () 을 사용 하여 날짜 문자열을 타임 스탬프로 변환 할 수 있습니다 . 그러나 strtotime ()도 y-m-d-h-i-s형식을 인식하지 못합니다 .

PHP 5.3 이상
사용 DateTime::createFromFormat. date()구문 을 사용하여 정확한 마스크를 지정하여 들어오는 문자열 날짜를 구문 분석 할 수 있습니다.

PHP 5.2 이하
수동으로 요소 (년, 월, 일,시, 분, 초)를 구문 분석하고 substr()결과를 mktime () 에 전달하면 타임 스탬프가 작성됩니다.

그러나 그것은 많은 작업입니다! strftime ()이 이해할 수있는 다른 형식을 사용하는 것이 좋습니다. strftime () 은 짧은 날짜 입력을 인식 합니다the next time joe will slip on the ice . 예를 들면 다음과 같습니다.
$old_date = date('l, F d y h:i:s');              // returns Saturday, January 30 10 02:06:34
$old_date_timestamp = strtotime($old_date);
$new_date = date('Y-m-d H:i:s', $old_date_timestamp);  

할인의추억님의 댓글의 댓글

profile_image
멋진 해결책이네요! 이모티콘

안졸리나졸리나님의 댓글

profile_image
이 시도:
$old_date = date('y-m-d-h-i-s');
$new_date = date('Y-m-d H:i:s', strtotime($old_date));