ati*_*tif 5 magento magento-1.4
如何获得两个日期之间的所有产品,如上个月的产品,本月产品,上周产品和本周产品等
我试过这个:
// current day to start with
$start = mktime(0,0,0,date('m'), date('d'), date('Y'));;
// calculate the first day of last month
$first = date('YYYY-MM-DD',mktime(0,0,0,date('m',$start) - 1,1,date('Y',$start)));
// calculate the last day of last month
$last = date('YYYY-MM-DD',mktime(0, 0, 0, date('m') -1 + 1, 0, date('Y',$start)));
if($filter == "lastmonth"){
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToFilter('updated_at', array('gteq' =>$first));
$collection->addAttributeToFilter('updated_at', array('lteq' => $last));
}
Run Code Online (Sandbox Code Playgroud)
但我无法得到结果:(任何帮助?
丹尼尔回应后修改了!
小智 17
1)首先,您需要将日期格式从'YYYY-MM-DD'更改为'Ym-d'.这将返回magento记录所具有的日期格式.
2)日期有一个特殊的条件,如下所示.
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToFilter('updated_at', array('gteq' =>$first));
$collection->addAttributeToFilter('updated_at', array('lteq' => $last));
Run Code Online (Sandbox Code Playgroud)
至.
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToFilter('updated_at', array(
'from' => $first,
'to' => $last,
'date' => true,
));
Run Code Online (Sandbox Code Playgroud)