私はこのZend_Sessionに非常に慣れていません。ZendFrameworkアプリを実行しています。今、私はそれにいくつかの「機能」を追加したいと思います。その機能の1つは、セッションに含まれるデータを必要とするため、すべてのサイトに保存され、ユーザーがアクセスします。
私のブートストラップでは、私は持っています
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initSession() {
Zend_Session::setOptions(array(
'use_only_cookies' => 'on',
'remember_me_seconds' => 864000
));
Zend_Session::start();
}
}
私のモデルには、特定のキーワードのデータを$_SESSIONに格納する関数があります。
$_SESSION['foo'][urlencode($keyword)] = array(
'data' => $base->some->foo[0]->fish->data
);
セッションキー(キーワード付き)が設定されていない場合、新しいデータはセッションにのみ設定されます。zendデバッガーを使用して、すべてが正常に実行されていることを確認しました。
さて、最初にページを呼び出すと、すべてが正常に実行されています。ページをリロードする(または別のページに移動する)と、セッションの値が失われます。したがって、正確には、キーはそこにあり、$ _ SESSION配列は(たとえば)20エントリのサイズです。エントリがありますが、nullです。
$_SESSION['foo']['my+foo']['data'] = null
私が電話するとき:
Zend_Debug::dump($_SESSION['foo']['my+foo']);
私は得る:
array (size=1)
'data' => null
それで、それはそこにあり、それは私の価値を殺しました。
単純なsession_start()を使用するときのように実行するための魔法のブードゥーは何ですか?