Mysql
 sql >> Baza danych >  >> RDS >> Mysql

PHP i MySQL:Konwersja zapisanego ZNACZNIKA CZASOWEGO na lokalną strefę czasową użytkownika

Wartości daty/godziny/daty/godziny są przechowywane w MySQL w miarę ich dostarczania. Tj. jeśli INSERT ciąg 2012-04-17 12:03:23 na DATETIME kolumna, to jest wartość, która będzie przechowywana. Zostanie ona wewnętrznie przekonwertowana na znacznik czasu, który może być dokładny lub nie (patrz poniżej), ale gdy ponownie zapytasz o wartość, otrzymasz tę samą wartość z powrotem; podróż w obie strony jest przezroczysta.

Jeśli spróbujesz wykonać obliczenia czasu w SQL, mogą wystąpić problemy. Tj. każda operacja, która wymaga, aby SQL uwzględniał strefę czasową i/lub czas serwera. Na przykład za pomocą NOW() . W przypadku każdej z tych operacji strefa czasowa i/lub czas serwera powinna być prawidłowo ustawione. Zobacz Problemy ze strefą czasową .

Jeśli to Cię nie dotyczy i musisz tylko wykonywać obliczenia w PHP, musisz tylko upewnić się, że wiesz, z której strefy czasowej chcesz przekonwertować strefę czasową. W tym celu może wygodnie jest ujednolicić wszystkie czasy do UTC, ale nie jest to konieczne, ponieważ konwersje stref czasowych z dowolnej strefy czasowej na dowolną inną strefę czasową działają równie dobrze, o ile masz jasność co do strefy czasowej, z której i do której dokonujesz konwersji.

date_default_timezone_set('Asia/Tokyo'); // your reference timezone here

$date = date('Y-m-d H:i:s');

/* INSERT $date INTO database */;

$date = /* SELECT date FROM database */;

$usersTimezone = new DateTimeZone('America/Vancouver');
$l10nDate = new DateTime($date);
$l10nDate->setTimeZone($usersTimezone);
echo $l10nDate->format('Y-m-d H:i:s');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wydrukować dane hierarchiczne w postaci nadrzędnej potomnej z nieuporządkowanej listy php?

  2. Jak przechowywać wiele elementów w kolumnie bazy danych?

  3. Zastąp domyślne wartości null zwrócone z lewego połączenia zewnętrznego

  4. Grupowanie podobnych wierszy obok siebie w MySQL

  5. Widok MySQL działa bardzo wolno. Czemu?