ZF2 でセッションを適切に使用する方法を教えてください。これまでのところ、私はこのコードを持っています:
"session" =>
[
"remember_me_seconds" => 2419200,
"use_cookies" => true,
"cookie_httponly" => true
]
これは、stackoverflow の投稿からコピーしたセッション構成です。このコードを、セッションを使用する各モジュールまたはアプリケーション モジュールの module.config.php に配置する必要がありますか?
public function onBootstrap(EventInterface $Event)
{
$Config = $Event->getApplication()->getServiceManager()->get('Configuration');
$SessionConfig = new SessionConfig();
$SessionConfig->setOptions($Config['session']);
$SessionManager = new SessionManager($SessionConfig);
$SessionManager->start();
Container::setDefaultManager($SessionManager);
}
Module クラスの onBootstrap() メソッドと同じ問題。このコードは、各モジュールの Module クラスに入れる必要がありますか?それとも、アプリケーションの Module クラスに 1 回だけ入れる必要がありますか?
どちらの場合も、両方のアプローチを試し、このコードを両方のモジュールに同時に入れようとしましたが、達成できたのは、コントローラーのコンストラクターでセッション変数を設定し、アクション/メソッドでそれらを読み取ることだけでした。あるアクション/メソッドでセッション変数を設定してから、別のアクション/メソッドで読み取ることができませんでした。コントローラーのコンストラクターで変数を設定した行を削除すると、セッションでこれらの変数が表示されなくなります。セッションは、ページが要求されるたびに作成および削除されたように動作します。
何か不足していますか?私をインターネット上のリソースにリンクしないでください。私はそれらをすべて読みましたが、あまり役に立ちません。