私は最近、Zendframework 2 を使用してアプリケーションの構築を開始しました。ZF1 での経験は豊富です。ここで ZF2 で直面している主な問題はセッションです。
セッションコンテナを作成する方法は次のとおりです。
use Zend\Session\Container;
// セッション コンテナの作成: (以前は名前空間として呼び出していました)
$session_user = new Container('user');
$session_user_errors = new Container('usererrors');
$session_user_shares = new Container('usershares');
今このように私はいくつかのコンテナを持っています、
このような特定のコンテナのキーをクリアできます
// キーでセッションから値を取得: ( get value from namespace )
$email = $session_user->offsetGet('email');
// セッションで値を設定: ( 名前空間から値を設定 )
$session_user->offsetSet('username', 'abcd');
今私の問題は、アプリケーションのいくつかのレベルで設定されているコンテナ全体をクリアすることです。
以下のコードを試してみると、すべてのセッションコンテナがクリアされます。
$session_user = new Container('user');
$session_user->getManager()->getStorage()->clear();
多くのキーを持つ「ユーザー」というコンテナのみをクリアしたい(最後に何があるかわかりません)。これを達成する方法はありますか
各キーで offsetunset を実行できることはわかっていますが、それは私が感じる最適な解決策ではありません。
特定のセッション コンテナをクリアする別の方法があれば、親切に提案してください。
注: - ZfcUserやAkrabatセッションなどのサードパーティモジュールは使用していません
この投稿に返信していただきありがとうございます。