ホームページ  >  記事  >  データベース  >  PHP と MySQL の間でタイムゾーンの同期を実現するにはどうすればよいですか?

PHP と MySQL の間でタイムゾーンの同期を実現するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-02 09:24:02579ブラウズ

How to Achieve Timezone Synchronization Between PHP and MySQL?

PHP と MySQL の同期のためのタイムゾーンの設定

PHP の date() 関数を使用して MySQL に日付を保存し、タイムゾーンの違いを考慮しながら MySQL の NOW() 関数を使用して日付を比較するには両方のツールのタイムゾーンを調整することが重要です。

ソリューションPHP の場合

PHP の場合、タイムゾーンの同期を確保するには次の手順が必要です。

  • デフォルトのタイムゾーンを設定します。
<code class="php">define('TIMEZONE', 'Europe/Paris');
date_default_timezone_set(TIMEZONE);</code>
  • 電話をかけるときのカスタムタイムゾーンdate():
<code class="php">$finalize_at = date('Y-m-d H:i:s', strtotime('+30 minutes'));</code>

MySQL のソリューション

PHP と同期するには、MySQL のタイムゾーン設定も調整する必要があります:

<code class="php">// Get current offset in minutes
$now = new DateTime();
$mins = $now->getOffset() / 60;
$offset = sprintf('%+d:%02d', -$mins, abs($mins));

// Update MySQL's timezone setting
$db = new PDO('mysql:host=localhost;dbname=test', 'dbuser', 'dbpassword');
$db->exec("SET time_zone='$offset';");</code>

同期の検証

これらの設定を行うと、PHP と MySQL の両方が同じタイムゾーンを使用する必要があります。これを確認するには、MySQL クエリの date_default_timezone_get() の出力と SELECT NOW() の結果を比較します。タイムゾーン名が一致すると、同期は成功します。

PHP および MySQL のタイムゾーンは、デバイスまたはサーバー設定の変更によって影響を受ける可能性があるため、アプリケーションのタイムゾーン設定を必ず確認してください。

以上がPHP と MySQL の間でタイムゾーンの同期を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。