назначая массив сеансу, вы должны указать имя сеанса, который вы создаете, т.е. вы должны выполнить setStorage, прежде чем выполнять getStorage.
вы должны написать свой код следующим образом:
// userAuthentication
public function authAction(){
$request = $this->getRequest();
$registry = Zend_Registry::getInstance();
$auth = Zend_Auth::getInstance();
$DB = $registry['DB'];
$authAdapter = new Zend_Auth_Adapter_DbTable($DB);
$authAdapter->setTableName('user')
->setIdentityColumn('user_name')
->setCredentialColumn('user_password');
$username = $request->getParam('username');
$password = $request->getParam('password');
$authAdapter->setIdentity($username);
$authAdapter->setCredential($password);
$authAdapter->setStorage(new Zend_Auth_Storage_Session('User_Auth'));
$result = $auth->authenticate($authAdapter);
if($result->isValid()){
$data = $authAdapter->getResultRowObject(null,'password');
$auth->getStorage()->write($data);
$this->_redirect('/login/controlpannel');
}else{
$this->_redirect('/login/login');
}
}
и затем, чтобы получить значение хранилища, вы должны использовать это:
$x = new Zend_Auth_Storage_Session('User_Auth');
$y = $x->read();
и вы получите все в $ y как объект.
Наслаждайтесь!