Tôi mới sử dụng ZF2 và không quen với cách làm công cụ. Tôi muốn sử dụng phiên để theo dõi người dùng (nhớ tôi). Tôi đã có mã này trong một phần của lớp học của tôi:Sử dụng phiên làm việc ZF2 SessionManager
$sessionManager = new \Zend\Session\SessionManager();
$sessionManager->rememberMe($time);
// i want to keep track of my user id too
$populateStorage = array('user_id' => $user->getId());
$storage = new ArrayStorage($populateStorage);
$sessionManager->setStorage($storage);
Ok, cho đến nay rất tốt. Khi tôi thử:
var_dump($sessionManager->getStorage());
Tôi nhận được dữ liệu mong đợi.
Trong một phần khác của chương trình của tôi, tôi muốn truy xuất dữ liệu của tôi một lần nữa (hơi giống container):
$sessionManager = new \Zend\Session\SessionManager();
var_dump($sessionManager->getStorage());
này chỉ trả về một đối tượng rỗng. Tôi đoán điều này là do "mới" và tôi nghĩ rằng tôi phải thực hiện SessionManager theo một cách khác, nhưng làm thế nào? Tôi không biết. Đây là những gì tôi đã đưa ra:
Trong mô-đun của tôi bây giờ có:
public function onBootstrap(\Zend\Mvc\MvcEvent $e)
{
$config = $e->getApplication()
->getServiceManager()
->get('Configuration');
$sessionConfig = new SessionConfig();
$sessionConfig->setOptions($config['session']);
$sessionManager = new SessionManager($sessionConfig);
$sessionManager->start();
Trong module.config tôi:
'session' => array(
'remember_me_seconds' => 2419200,
'use_cookies' => true,
'cookie_httponly' => true,
),
Nhưng làm thế nào để procede? Làm thế nào để tôi có được thể hiện cho sessionManager của tôi?
Tuyệt vời, không nhận thấy dịch vụ này rất hữu ích! – razor7
Rất tiếc là Zend 2 không có tài liệu phù hợp. Có vẻ như zend 2 chỉ dành cho những người phát triển nó. – kta