정확한 날짜 처리를 위해 PHP 및 MySQL 시간대 동기화
PHP date() 함수를 사용하여 MySQL에 날짜를 저장할 때 다음과 같은 경우 불일치가 발생할 수 있습니다. PHP 및 MySQL 시간대가 정렬되지 않았습니다. 이 문제는 서버의 시간대에 의존하는 NOW() 함수를 사용하여 MySQL에서 날짜를 비교할 때 더욱 분명해집니다.
이 문제를 해결하려면 다음 단계를 고려하십시오.
PHP 설정 시간대:
<code class="php">define('TIMEZONE', 'Europe/Paris'); date_default_timezone_set(TIMEZONE);</code>
상수를 정의하고 이에 따라 PHP 시간대를 설정하면 이후의 모든 date() 호출은 지정된 시간대를 사용합니다.
MySQL의 시간대를 동적으로 조정합니다. :
MySQL의 구성이나 콘솔에서 시간대를 수동으로 설정하는 대신 PHP 스크립트 내에서 동적으로 동기화를 수행할 수 있습니다.
<code class="php">$now = new DateTime(); $offset = sprintf('%+d:%02d', $now->getOffset() / 60, abs($now->getOffset()) % 60); $db = new PDO('mysql:host=localhost;dbname=test', 'dbuser', 'dbpassword'); $db->exec("SET time_zone='$offset';");</code>
이 복잡한 접근 방식을 통해 MySQL의 시간대가 정렬됩니다. 환경에 관계없이 PHP를 사용하세요.
이러한 단계를 따르면 PHP와 MySQL의 시간대를 효과적으로 동기화하여 정확한 날짜 비교가 가능하고 불일치를 없앨 수 있습니다.
위 내용은 정확한 날짜 처리를 위해 PHP와 MySQL 시간대를 동기화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!