2017-12-13 25 views
1

사용자의 시간대에 따라 날짜와 시간을 표시하려고합니다. 로그인 할 때마다 사용자의 시간대가 표시됩니다. 다음은 사용자에게 날짜와 시간을 주석으로 표시해야하는보기의 코드입니다.Laravel Carbon을 사용하여 날짜와 시간을 표시하는 동안 사용자 시간대 설정

{{ Carbon\Carbon::createFromFormat('Y-m-d H:i:s', $memoriesRow->createdAt, 'UTC')->setTimezone($timezone)->format('l, F dS Y h:i A') }} 

그러나 표시된 날짜와 시간은 정확하지 않습니다.

Asia/Karachi - 2017-12-13 16:55:07 

그러나 그것은 나에게이 (오후 9시 55분이 미래 시간) 보여 주었다 : 다음 날짜와 시간대 나는 그것을 통과하고있어되어 아래와 같이 시도

Wednesday, December 13th 2017 09:55 PM 
+0

$ date-> setTimezone ('Asia/Karachi')와 (과) 같이 추가하십시오. after date = "Carbon \ Carbon ---" –

+0

@AmitGupta 확인 확인 .. –

+0

@AmitGupta 예외가 발생했습니다. 문자열의 구성원 함수 setTimezone()을 호출합니다. –

답변

1

을 :

$timestamp = $memoriesRow->createdAt; 
$date = Carbon::createFromFormat('Y-m-d H:i:s', $timestamp, 'Asia/Karachi'); 
+0

차이점이 있습니다. 또한 언급 한 방법을 사용하여 어떻게 형식을 지정할 수 있습니까? 원래 날짜 : 2017-12-13 16:55:07 - 변환 날짜 : 2017-12-13 21:55:07 –

+1

아시아/카라치 UTC 대신에 –

+0

첫 번째 차이점을 해결해야합니다. –