在 Magento 中有几种方法可以取消设置会话变量。其中大部分(不是全部)都在中定义Varien_Object
,因此可用于 Magento 中扩展它的所有对象。
未设置数据:
$session->unsetData('day_filter');
$session->unsetData('days');
$session->unsetData('next_delivery_date');
uns(这会稍微慢一些,最终还是会执行 unsetData ):
$session->unsDayFilter();
$session->unsDays();
$session->unsNextDeliveryDate();
获取数据
没有错!中存在一种相对未知的方法Mage_Core_Model_Session_Abstract_Varien
。此类中的 getData 方法包含一个可选的布尔第二个参数,如果传递 true 将在返回变量时清除该变量。
因此$session->getData('day_filter', true);
将返回会话变量 day_filter 并同时从会话中清除它。
设置为 null:
$session->setData('day_filter', NULL);
$session->setData('days', NULL);
$session->setData('next_delivery_date', NULL);
全部取消 | 清除
最后,您可以使用核选项(注意:这将取消设置会话中的所有数据,而不仅仅是您添加的数据):
$session->unsetAll();
或$session->clear();
(互为别名)