我正在使用以下代码来获取单日的销售数据,我应该在往返时间中传入和传出变量? 使用的日期格式为11/15/14(mm / dd / yy)
我过了00:00:00,但这是午夜。
$to_date = date('Y-m-d' . ' 00:00:00', strtotime($to));
$from_date = date('Y-m-d' . ' 00:00:00', strtotime($from));
$orders = Mage::getModel("sales/order")->getCollection()
->addFieldToFilter('created_at', array('from'=>$from_date, 'to'=>$to_date));
答案 0 :(得分:1)
我在本地主机上试过这个并且它工作正常,您可以根据需要调整过滤器
require_once('app/Mage.php'); //Path to Magento
umask(0);
Mage::app();
$time = time();
$to = date('Y-m-d H:i:s', $time); echo '<br>';
$lastTime = $time - 86400; // 60*60*24
$from = date('Y-m-d H:i:s', $lastTime);
$orders = Mage::getModel('sales/order')->getCollection()
->addFieldToFilter('created_at', array('from' => $from, 'to' => $to))
->addAttributeToFilter('status', 'complete');
//echo $orders->getSelect();
echo '<pre>';
$_totalData = $orders->getData();
//echo $_grand = $_totalData['0']['grand_total'];
//print_r($_totalData);
foreach ($_totalData as $data) {
$total_sale[] = $data['grand_total'];
}
print_r($total_sale);
如果您有任何疑问,请在此发表评论。
答案 1 :(得分:0)
为什么不使用24小时时间跨度格式的当前日期并使用当天0到24小时之间的限制
答案 2 :(得分:0)
我想你想要获得单日记录,所以只需要一天作为输入。请参阅以下代码:
$inputDay = "17-11-2014";
$from_date = date('Y-m-d H:i:s', strtotime("$inputDay 00:00:00"));
$to_date = date('Y-m-d H:i:s', strtotime("$inputDay 23:59:59"));
$orders = Mage::getModel("sales/order")->getCollection()
->addFieldToFilter('created_at', array('gteq' => $from_date))
->addFieldToFilter('created_at', array('lteq' => $to_date));
我过了一天,简单地计算开始时间和结束时间!
答案 3 :(得分:0)
您必须更改数据格式才能实现24小时
$inputDay = "11/13/14"; // your current format for data is mm/dd/yy
$inputDay = date("Y-m-d", strtotime($inputDay));
$to_date = date('Y-m-d', strtotime($inputDay)).' 23:59:59';
$from_date = date('Y-m-d', strtotime($inputDay)).' 00:00:00';
// Now data is become Y-m-d h:i:s
$orders = Mage::getModel("sales/order")->getCollection()
->addFieldToFilter('created_at', array('from'=>$from_date, 'to'=>$to_date));
echo $orders->getSize();
exit;
希望这对您有用。
答案 4 :(得分:0)
我使用了以下代码
$to_date = date('Y-m-d' . ' 23:59:00', strtotime($to));
$from_date = date('Y-m-d' . ' 00:00:00', strtotime($from));
$orders = Mage::getModel("sales/order")->getCollection()
->addFieldToFilter('created_at', array('from'=>$from_date, 'to'=>$to_date));