Magento整个系统中使用UTC时间,即通用协调时(UTC, Universal Time Coordinated)。这样保证在不同的视图或者Store里使用的时间与本地时间一致,在系统配置中可以看到,每个视图或者店铺可以单独设置时区。
Magento在数据库中存贮的都是UTC时间,在渲染视图的时候会显示当前时间。
 
如果想在视图中获取当前时间,可以使用如下函数:
Mage::getModel(‘core/date’)->date(); 
 
或者在Grid中使用:
$this->addColumn(‘customer_since’,
array(
            ‘header’    => Mage::helper(‘customer’)->__(‘Customer Since’)
            //这个是指定该字段是时间字段,在视图输出的时候会自动转成当地时间。
            ‘type’      => ‘datetime’,
            ‘align’     => ‘center’,
            ‘index’     => ‘created_at’,
            ‘gmtoffset’ => true
        ));

提示的一点是在Magento开发中千万别尝试改变系统时区,例如在入口文件index.php或者启动器Mage.php加入date_default_timezone_set这样的函数,不然你会扰乱整个系统的时间。
date_default_timezone_set(‘Asia/Shanghai’);

阿里云-推广AD