$session =Маг::getSingleton ('ядро/сессия', массив ('имя'=>'интерфейс'));


Если я могу использовать сеанс для хранения такой переменной

$session = Mage::getSingleton('core/session')->setData('Message');

Тогда в чем польза

$session = Mage::getSingleton('core/session', array('name'=>'frontend')); что на самом деле делает этот код.

Author: Waseem, 2014-01-23

2 answers

В стандартной установке Magento по умолчанию у вас есть два варианта для сеанса.

  1. adminhtml - устанавливается в действии mage_adminhtml_controller_
  2. интерфейс - устанавливается в Mage_Core_Controller_Front_Action

Когда Mage_Core_Controller_Varien_Action запускает функцию предрасположенности, она запускает сеанс для соответствующего раздела.

$session = Mage::getSingleton('core/session', array('name' => $this->_sessionNamespace))->start();

Конструкция сеанса будет принимать имя раздела, в котором вы находитесь, интерфейс или adminhtml, и будет ограничивать данные, которые вы можете получить доступ.

public function __construct($data=array())
{
    $name = isset($data['name']) ? $data['name'] : null;
    $this->init('core', $name);
}
 2
Author: David Manners, 2014-01-24 18:30:53

Это означает, что переменная сеанса имеет доступ только к интерфейсному сеансу.вы не можете получить доступ к сеансу администратора с указанным выше кодом.

 1
Author: Pradeep Sanku, 2014-01-23 06:25:25