date_default_timezone_set()은 시간대를 설정합니다.
<?php echo function_exists(date_default_timezone_set)."<br>";//在这他总是返回1,这函数是判断这里面的字符是不是一个定义了的函数名 echo date('Y-m-d H:i:s')."<br>";//默认时区的时间 echo date_default_timezone_set("Etc/GMT")."<br>";//这是格林威治标准时间,得到的时间和默认时区是一样的 echo date('Y-m-d H:i:s')."<br>"; echo date_default_timezone_set("Etc/GMT+8")."<br>";//这里比林威治标准时间慢8小时 echo date('Y-m-d H:i:s')."<br>"; echo date_default_timezone_set("Etc/GMT-8")."<br>";//由上一个不能难想像,我们比那快8小时所以减8 echo date('Y-m-d H:i:s')."<br>"; echo date_default_timezone_set('PRC')."<br>"; //设置中国时区 echo date('Y-m-d H:i:s')."<br>";//中国标准时间 ?> //输出 1 2009-05-15 02:20:42 //默认时区时间 1 2009-05-15 02:20:42 //("Etc/GMT") 格林威治标准时间 1 2009-05-14 18:20:42 //("Etc/GMT+8") 比林威治标准时间慢8小时 1 2009-05-15 10:20:42 //("Etc/GMT-8") 比林威治标准时间快8小时,是我们的北京时间 1 2009-05-15 10:20:42 //('PRC') 中国标准时间
이전에도 문제가 남아있었습니다. 즉, echo date("y-m-d h:i:s", time())이 항상 실제 시간과 일치하지 않습니다. 오늘 드디어 온라인에서 원인과 해결책을 찾았습니다.
다음 팁에 따라 php.ini를 수정했다는 점을 덧붙이고 싶습니다. date.timezone 라인을 찾을 수 없습니다. 없는 걸까요? 물론 없는 방법도 있습니다. 하하, 없으면 직접 추가하고 음식과 옷도 직접 만드세요. date.timezone = "PRC"를 추가했더니 문제가 해결되었습니다.
php5.1.0부터 php.ini에 date.timezone 옵션이 추가되었습니다
시간도 마찬가지입니다. 표시된 (어떤 php 명령을 사용하든) 그리니치 표준시
이며 이는 우리 시간(베이징 시간)과 정확히 8시간 다릅니다. 정상 시간을 복원하는 방법은 다음과 같습니다.
1. 가장 간단한 방법은 php5.1 이상을 사용하지 않는 것입니다.
2 꼭 사용해야 하고 php.ini를 수정할 수 없는 경우에는 시간 초기화에 대한
문에 date_default_timezone_set(XXX)을 추가해야 합니다. ;
cp에는 이 문제가 없습니다
3, 일단 php.ini만 수정할 수 있습니다. php.ini를 열고 date.timezone을 검색하세요. 앞의 세미콜론을 제거하고
= 뒤에 XXX를 추가하세요. http 서비스(예: apache2 또는 iis 등)를 다시 시작하세요.
XXX와 관련하여 사용 가능한 값 중국 본토의 경우: 아시아/충칭, 아시아/상하이, 아시아/우루무치(중경, 상하이, 우루무치 순서)
홍콩 및 대만 사용 가능: 아시아/마카오, 아시아/홍콩, 아시아/타이베이(마카오 순서) , 홍콩, 타이페이)
그리고 싱가포르: 아시아/싱가포르
외국인들은 베이징을 놓친 것 같습니다
다른 사용 가능한 값은 다음과 같습니다: Etc/GMT-8, Singapore, Hongkong, PRC
PRC란 무엇인가요? PRC는 중화인민공화국이다 -_-
위 내용은 PHP에서 시간대를 설정하는 date_default_timezone_set() 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!