"PHP 시간대 설정 잘못된 경우"의 두 판 사이의 차이

(새 문서: ==문제상황== 서버 시계는 맞는데, PHP에서 시계가 맞지 않는다. *phpinfo();에서 Default timezone을 값을 확인한다. 분류:PHP)
 
잔글 (봇: 자동으로 텍스트 교체 (-source +syntaxhighlight))
 
(사용자 2명의 중간 판 23개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==문제상황==
==문제상황==
서버 시계는 맞는데, PHP에서 시계가 맞지 않는다.
서버 시계는 맞는데, PHP에서 시계가 맞지 않는다.
아래 PHP 소스를 실행했더니 8시간 느린 시각이 나온다.
<syntaxhighlight lang='php'>
echo date("Y-m-d H:i:s", time());
</syntaxhighlight>


*phpinfo();에서 Default timezone을 값을 확인한다.
<syntaxhighlight lang='console'>
[root@localhost ~]# date
Fri Mar  2 15:31:45 KST 2012
</syntaxhighlight>
→ 시스템 시계는 정상이며 한국표준시(KST)이다.
 
==확인==
===phpinfo===
*<code>phpinfo();</code>를 확인해보니 다음과 같았다.
{| class='wikitable'
|+date
| date/time support||enabled
|-
| "Olson" Timezone Database Version||2011.8
|-
| Timezone Database||internal
|-
| Default timezone||Europe/Berlin
|}
 
{| class='wikitable'
| align="center" style="background:#f0f0f0;"|'''Directive'''
| align="center" style="background:#f0f0f0;"|'''Local Value'''
| align="center" style="background:#f0f0f0;"|'''Master Value'''
|-
| date.default_latitude||31.7667||31.7667
|-
| date.default_longitude||35.2333||35.2333
|-
| date.sunrise_zenith||90.583333||90.583333
|-
| date.sunset_zenith||90.583333||90.583333
|-
| date.timezone||Europe/Berlin||Europe/Berlin
|}
→ timezone 문제인 것 같다. 베를린은 서울보다 8시간 느리다.
 
===php.ini===
<syntaxhighlight lang='console'>
[root@localhost ~]# cat /etc/php.ini | grep timezone
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Berlin
</syntaxhighlight>
 
==적용==
php.ini에 내용을 수정하고 httpd를 재시작했더니 정성화되었다.
<syntaxhighlight lang='text'>
date.timezone = Asia/Seoul
</syntaxhighlight>
<syntaxhighlight lang='bash'>
httpd -k restart
</syntaxhighlight>
 
==같이 보기==
*[[PHP 시간대 설정]]


[[분류:PHP]]
[[분류:PHP]]
[[분류: 시간대]]

2020년 11월 2일 (월) 02:35 기준 최신판

1 문제상황[ | ]

서버 시계는 맞는데, PHP에서 시계가 맞지 않는다. 아래 PHP 소스를 실행했더니 8시간 느린 시각이 나온다.

PHP
Copy
echo date("Y-m-d H:i:s", time());
Console
Copy
[root@localhost ~]# date
Fri Mar  2 15:31:45 KST 2012

→ 시스템 시계는 정상이며 한국표준시(KST)이다.

2 확인[ | ]

2.1 phpinfo[ | ]

  • phpinfo();를 확인해보니 다음과 같았다.
date
date/time support enabled
"Olson" Timezone Database Version 2011.8
Timezone Database internal
Default timezone Europe/Berlin
Directive Local Value Master Value
date.default_latitude 31.7667 31.7667
date.default_longitude 35.2333 35.2333
date.sunrise_zenith 90.583333 90.583333
date.sunset_zenith 90.583333 90.583333
date.timezone Europe/Berlin Europe/Berlin

→ timezone 문제인 것 같다. 베를린은 서울보다 8시간 느리다.

2.2 php.ini[ | ]

Console
Copy
[root@localhost ~]# cat /etc/php.ini | grep timezone
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Berlin

3 적용[ | ]

php.ini에 내용을 수정하고 httpd를 재시작했더니 정성화되었다.

text
Copy
date.timezone = Asia/Seoul
Bash
Copy
httpd -k restart

4 같이 보기[ | ]

  • PHP 파일 다운로드 구현 2 (한글 파일명 지원)
    제가 파일다운로드 관련된 것이 서툴러서 파일 다운로드 부분을 인용하였습니다. 죄송합니다.
  • PHP에서 오라클 DB 사용
    감사합니당. YoWu
  • PHP 파일 업로드 구현
    파일정보 출력에서 $name $ext 가 정상적으로 출력되나요? 전부 echo의 쌍따옴표안에 있는데? 일리단사오육칠
  • PHP 파일 업로드 구현
    PHP echo에서 쌍따옴표 안의 변수는 해석되어 출력됩니다. 위 소스에서도 $name와 $ext가 두껍게 나와있죠? 일반 문자열과는 다르다는 표시죠.J Jmnote
  • PHP 파일 다운로드 구현 2 (한글 파일명 지원)
    'Windows NT 6.1' << 이부분은 접속한 윈도우의 플랫폼을 뜻하는걸로 압니다. ie11 접속하면 다음과 같이 바뀌었고 Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko rv:11.0 << 이부분이 Anmkst
  • Lib my.php
    Fatal error: Uncaught Error: Call to undefined function insert_rows() in D:\xampp\htdocs\naru\import_excel.php:38 Stack trace: #0 {main} thrown in D:\xampp\htdo 신정섭
  • Lib my.php
    함수 query()를 사용하면 됩니다. 예시 추가했으니 참고바랍니다.J Jmnote
  • 로또번호 생성
    초보를 위한 개발 실습 과제로군요 ㅎㅎ Pinkcrimson