有幾種方法可以在Magento中取消設置會話變量。大多數(不是全部)都在Varien_Object
中定義,因此可以擴展到Magento中的所有對象。
unsetData:
$session->unsetData('day_filter');
$session->unsetData('days');
$session->unsetData('next_delivery_date');
UNS(這將是稍微慢和最終執行unsetData反正):
$session->unsDayFilter();
$session->unsDays();
$session->unsNextDeliveryDate();
的getData
不是一個錯誤! Mage_Core_Model_Session_Abstract_Varien
中存在相對未知的方法。該類中的getData方法包含一個可選的boolean第二個參數,如果傳遞true參數,它將在返回時清除該變量。
因此$session->getData('day_filter', true);
會返回會話變量day_filter,並同時從會話中清除它。
設置爲空:
$session->setData('day_filter', NULL);
$session->setData('days', NULL);
$session->setData('next_delivery_date', NULL);
unsetAll |明確
最後,你可以使用核選項(請注意:這將取消設置所有數據在會話中,而不僅僅是數據已添加):
$session->unsetAll();
或$session->clear();
(每兩個別名其他)