Phalcon (および一般的なフレームワーク) の真新しいので、私の無知を許してください。
自分の設定をブートストラップ ファイルに読み込み、それをセッションに保存したい (一度だけ読み込み、グローバルにアクセスする必要がある)。
セッションが作成され、構成情報が $Config に正常に読み込まれています。ただし、セッションに $Config を保存するにはどうすればよいですか? 私はコントローラーにいないので、使用できません$this->session
。唯一の方法は、セッションを DI から引き出し、 $config プロパティを追加してから、DI のセッション プロパティを再設定することです。
$DI->setShared('session', function(){
$session = new Phalcon\Session\Adapter\Files();
if(session_status() == PHP_SESSION_NONE)
$session->start();
return $session;
});
$Config = require '../app/config/config.php';
$Session = $DI->get('session');
$Session->config = $Config;
$DI->setShared('session',$Session);
ブートストラップのセッションに何かを保存するのはかなり非効率的な方法のように思えますが。これはそれを行う唯一の方法ですか、それとも隠れた機能が欠けていますか? セッションを手動で (匿名関数ではなく) 作成し、「config」を設定して、$DI->setShared()
.