2011-01-07 82 views
14

我想通过Magento的getQuote函数获取购物车的详细信息。我怎样才能做到这一点?在Magento中获取购物车详细信息

$cart = Mage::getModel('checkout/cart')->getQuote(); 

当我打印$cart页停止执行和空白页所示。 但是,当我写

$cart = Mage::getModel('checkout/cart')->getQuote()->getData(); 

和打印$cart阵列将显示。但我想跟踪完整的购物车数据(产品ID,产品价格,如所有信息)。

有没有其他方法可以找到购物卡数据?

回答

25

getQuote返回的对象是Mage_Sales_Model_Quote。它有一个方法getAllItems,然后返回一个Mage_Sales_Model_Quote_Item对象的集合。

这一切都意味着,你可以检查的产品是这样的:

PS。你得到一个空白页面的原因是因为倾销整个对象可能会陷入递归并且页面超时,或者PHP耗尽内存。使用getDatadebug更安全,但正如您所见,不会返回受保护的/私有变量。使用为getQuote()方法

+4

这里要补充的唯一的事情是安装了XDebug使它“安全”将对象放入PHP var_dump函数并避免大多数与递归相关的问题。 – 2011-01-08 00:25:37

2

获得购物车中的商品

$cart = Mage::getModel('checkout/cart')->getQuote()->getItemsCollection(); 
echo "<pre>"; 
print_r($cart->getData()); 

获得购物车中的商品没有的getQuote()方法

$cart = Mage::getModel('checkout/cart')->getItems(); 
echo "<pre>";print_r($cart->getData());