php5.10부터 PHP에 시간대 설정이 추가되었습니다. PHP에 표시되는 시간은 그리니치 표준시로 인해 중국 사용자에게는 8시간 차이가 나는 문제가 발생했습니다. [추천 튜토리얼: php 입문 튜토리얼]
관련 설정은 php.ini의 date.timezone 매개변수를 수정하는 것입니다:
[Date] ; Defines the default timezone used by the date functions ;date.timezone =
기본값은 닫힘이며, 댓글을 삭제하고 PRC가 "중화인민공화국"인
[Date] ; Defines the default timezone used by the date functions date.timezone = PRC
으로 변경하세요!
다른 옵션은 php 매뉴얼을 참고하세요.
그런데 위 아시아 지역에서는 우리 수도인 베이징이 빠졌네요. 외국인이 일부러 그랬는지 모르겠네요!
php.ini 수정 권한이 없다면 시간과 날짜 함수 호출 시 date_default_timezone_set('
PRC')만 호출하면 됩니다!
date_default_timezone_get()을 호출하여 현재 시간대 설정을 볼 수도 있습니다!
XXX 관련 중국 본토에서 사용 가능한 값은
아시아/충칭, 아시아/상하이, 아시아/우루무치(순서대로 충칭, 상하이, 우루무치)
홍콩 및 대만 사용 가능 지역: 아시아/마카오, 아시아/홍콩, 아시아/타이베이(마카오, 홍콩, 타이페이 순서)
대만 지역 설정 가능: date.timezone = "Asia/ /타이페이"
그리고 싱가포르: 아시아/싱가포르
PHP5의 8시간 시차에 대한 해결책
php5를 설치한 후 포럼에서 우연히 누군가가 php5라고 말하는 것을 보았습니다. .1.2 시간 표시가 완전 8시간 적었습니다.
<?php echo date("Y-m-d H:i:s"); ?>
역시 제가 직접 테스트한 후 8시간 차이가 나더군요.
포럼에서 정보를 찾아보다가 드디어 해결책을 찾았습니다. PHP5 이상에서는 현지 시간(중국만 해당)을 출력해야 합니다
. :
<?php date_default_timezone_set('Asia/Shanghai'); echo date('Y-m-d H:i:s'); ?>
다음과 같은 코드를 작성할 수도 있습니다.
<?php date_default_timezone_set('Asia/Chongqing'); echo date('Y-m-d H:i:s'); ?>
이렇게 하면 8시간 시차 문제가 해결됩니다! ! ~~