Ci sono diversi modi per disinserire le variabili di sessione in Magento. La maggior parte di questi (non tutti) sono definiti in Varien_Object
e quindi sono disponibili per tutti gli oggetti in Magento che lo estendono.
unsetData:
$session->unsetData('day_filter');
$session->unsetData('days');
$session->unsetData('next_delivery_date');
uns (che sarà leggermente più lento e, infine, esegue unsetData comunque):
$session->unsDayFilter();
$session->unsDays();
$session->unsNextDeliveryDate();
getData
Non è un errore! Un metodo relativamente sconosciuto esiste in Mage_Core_Model_Session_Abstract_Varien
. Il metodo getData in questa classe contiene un secondo parametro booleano facoltativo che, se passato true, cancellerà la variabile restituendola.
Quindi $session->getData('day_filter', true);
restituirebbe la variabile di sessione day_filter e cancellerà anche dalla sessione allo stesso tempo.
impostato su NULL:
$session->setData('day_filter', NULL);
$session->setData('days', NULL);
$session->setData('next_delivery_date', NULL);
unsetAll | chiaro
Infine è possibile utilizzare l'opzione nucleare (ATTENZIONE: Ciò disinserire TUTTI I DATI nella sessione, e non solo i dati che si hanno aggiunto):
$session->unsetAll();
o $session->clear();
(entrambi gli alias di ogni altro)
fonte
2012-06-08 06:31:11