大家知道date()函數輸出的是目前時區的時間,如果php全局設定了時區以該時區為準,如果沒有設定,則以系統時區為準。
那麼在magento設定了背景的timezone之後,相當于設定了php全局時區嗎?不! magento全局時區永遠是格林威治時區。
是以,如果想使用magento設定時區的時間,必須明确調用時區,或者通過下面的方法,date()顯然是不生效的。
$date = mage::app()->getlocale()->date();
$dstr = $date->tostring(varien_date::datetime_internal_format);
//$dstr 可以用于存儲到資料庫的datetime字段.
源文:http://koda.javaeye.com/blog/652401