在Magento获取购物车详情

mjd*_*per 14 magento

我想通过使用Magento的getQuote功能获取购物车的详细信息.我怎样才能做到这一点?

$cart = Mage::getModel('checkout/cart')->getQuote();
Run Code Online (Sandbox Code Playgroud)

当我打印$cart页面停止执行时,显示空白页面.但是当我写作

$cart = Mage::getModel('checkout/cart')->getQuote()->getData();
Run Code Online (Sandbox Code Playgroud)

并打印$cart一个数组将显示.但我想跟踪完整的购物车数据(产品ID,产品价格和所有信息一样).

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

clo*_*eek 26

返回的对象getQuote是a Mage_Sales_Model_Quote.它有一个方法getAllItems,该方法又返回一组Mage_Sales_Model_Quote_Item对象.

这意味着你可以检查这样的产品:

$cart = Mage::getModel('checkout/cart')->getQuote();
foreach ($cart->getAllItems() as $item) {
    $productId = $item->getProduct()->getId();
    $productPrice = $item->getProduct()->getPrice();
}
Run Code Online (Sandbox Code Playgroud)

PS.你得到一个空白页面的原因是因为转储整个对象可能会进入递归状态并且页面超时,或者PHP内存不足.使用getDatadebug更安全,但正如您所见,不会返回受保护/私有变量.

  • 这里唯一要添加的是安装xDebug使得将对象放入PHP var_dump函数并避免大多数与递归相关的问题是"安全的". (4认同)