час в Magento - magento, час

Я маю справу з часом у Magento і хотів побачити, чи хтось це зустрінеться, і зможе пояснити це.

2012-01-24 06:35:43 це марка created_at для замовлення, внесеного 24 січня 2012 р. 1:35:43 Східний стандартний час.

Чи означає це, що моєму серверу є час UTC, і що мій Magento зберігає все в UTC і перетворює його на схід при відтворенні?

Якщо Magento перетворює значення (яке я вважаю таким, що є), який метод / клас / помічник, який обробляє це?

Відповіді:

3 для відповіді № 1

Я не надто глибоко розкопався на цьому, але це моє розуміння, найчастіше матеріали Magento дати / часу обробляються Mage_Core_Model_Date клас

app/code/core/Mage/Core/Model/Date.php

Я не здивуся, якщо деякі модулі мають свої власні функції обробки дат через. Такі речі, як правило, відбуваються в системах як модульні як Magento.


3 для відповіді № 2

Так. Magento зберігає свої внутрішні мітки як UTC. Індивідуальні магазини можна налаштувати за допомогою власних часових поясів, перейшовши до системи -> конфігурація -> загальні -> параметри локалі.

Ви можете отримати скоригований часовий покажчик для магазину, виконавши таке:

$date = Mage::app()->getLocale()->storeDate(<store_id>, <utc_timestamp>);

Це поверне а Zend_Date об'єкт

Ви також можете отримати поточну мітку для магазину, виконавши це:

$timestamp = Mage::app()->getLocale()->storeTimeStamp(<store_id>);

Це поверне цільове значення часу.