`PHP` و `MySql` دو پردازه جدا هستند که هرکدام تنظیمان منتطقه زمانی خاص خود را دارند، و ممکن است هنگام گسترش سیستم خود با مشکل مواجه شوید. هرچند هنگامی که سیستم خود را به سروری انتقال دهید، هردوی آنها از تنظیمات سرور برای مشخص کردن منطقه زمانی استفاده می کنند، ولی گاه ممکن است بخواهید به کاربران اجازه انتخاب منطقه زمانی خاص خود را بدهید، یا چند سیستم مختلف داشته باشید که قرار است در کنار هم با منطقه زمانی های متفاوت کار کنند، در این صورت می بایست سعی بر همگام سازی برنامه و پایگاه داده داشته باشید.

کد زیر روشی برای این همگام سازی را نمایش می دهد

``` // PHP: set app default timezone define('TIMEZONE', 'America/New_York'); date_default_timezone_set(TIMEZONE);

// PHP: get timezone offset
$now = new DateTime();
$mins = $now->getOffset() / 60;

// PHP: calculate suitable format for mysql offset
$sgn = ($mins
$mins = abs($mins);
$hrs = floor($mins / 60);
$mins -= $hrs * 60;
$offset = sprintf('%+d:%02d', $hrs*$sgn, $mins);

// MYSQL: set database timezone
$db = new PDO('mysql:host=localhost;dbname=test', 'dbuser', 'dbpassword');
$db->exec("SET time_zone='$offset';");