Heim >Datenbank >MySQL-Tutorial >Wie erreicht man eine Zeitzonensynchronisierung zwischen PHP und MySQL?

Wie erreicht man eine Zeitzonensynchronisierung zwischen PHP und MySQL?

Susan Sarandon
Susan SarandonOriginal
2024-11-02 09:24:02679Durchsuche

How to Achieve Timezone Synchronization Between PHP and MySQL?

Einstellen von Zeitzonen für die PHP- und MySQL-Synchronisierung

Zum Speichern von Daten in MySQL mithilfe der Funktion date() von PHP und zum Vergleichen mithilfe der Funktion NOW() von MySQL unter Berücksichtigung von Zeitzonenunterschieden ist es wichtig, die Zeitzonen für beide Tools abzugleichen.

Lösungen für PHP

Für PHP umfasst die Sicherstellung der Zeitzonensynchronisierung die folgenden Schritte:

  • Legen Sie die Standardzeitzone fest :
<code class="php">define('TIMEZONE', 'Europe/Paris');
date_default_timezone_set(TIMEZONE);</code>
  • Verwenden Sie eine benutzerdefinierte Zeitzone, wenn Sie date() aufrufen:
<code class="php">$finalize_at = date('Y-m-d H:i:s', strtotime('+30 minutes'));</code>

Lösungen für MySQL

Zur Synchronisierung mit PHP und MySQLs Zeitzoneneinstellung müssen ebenfalls angepasst werden:

<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>

Synchronisierungsüberprüfung

Mit diesen Konfigurationen sollten sowohl PHP als auch MySQL dieselbe Zeitzone verwenden. Um dies zu überprüfen, vergleichen Sie die Ausgabe von date_default_timezone_get() und das Ergebnis von SELECT NOW() in einer MySQL-Abfrage. Wenn die Zeitzonennamen übereinstimmen, ist die Synchronisierung erfolgreich.

Denken Sie daran, die Zeitzoneneinstellungen in Ihrer Anwendung zu überprüfen, da PHP- und MySQL-Zeitzonen durch Änderungen der Geräte- oder Servereinstellungen beeinflusst werden können.

Das obige ist der detaillierte Inhalt vonWie erreicht man eine Zeitzonensynchronisierung zwischen PHP und MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn