【发布时间】:2011-01-13 12:27:38
【问题描述】:
我对数据库的一个字段有疑问。使用此代码:
$expireMonth = Mage::getStoreConfig('points_options/config_points/expiration_period', Mage::app()->getStore()->getId());
if (!is_null($expireMonth) && ($expireMonth > 0)) {
$expireDate = date("Y-m-d H:i:s", strtotime("+" . $expireMonth . " month"));
} else {
$expireDate = NULL;
}
//die($expireDate);
//store in points history table
$this->_pointsModel->setCustomerId($this->_customer->getId())
->setOrdersId('welcome')
->setPointsPending($pointsForNewCustomer)
->setPointsComment(Mage::helper('points')->__('welcome points'))
->setDateAdded(date('Y-m-d H:i:s'))
->setPointsStatus(2)//confirmed
->setPointsType('WE')
->setStoreId(Mage::app()->getStore()->getId())
->setExpireDate($expireDate)
->save();
每个字段都保存在表中,expire_date 除外。如果我取消注释 die($expireData),我会看到正确的值,例如 2012-01-13 13:21:12。该字段定义为:
`expire_date` datetime NULL
有什么想法吗?
编辑:解决办法是:
$expireDate = date("Y-m-d H:i:s", strtotime("+" . $expireMonth . " months"));
查看我的 strtotime 表达式中的“s”。
【问题讨论】: