1

私の別のスクリプト(これでCodeigniterを使用していませんが、同じドメインで使用しています)では、セッションデータを次のように設定しています:

<?php
session_start();
$_SESSION['something'] = 'test';

分離されたファイルでは機能するのに、Codeigniter セッションでは機能しないのはなぜですか?

Codeigniterコントローラーを使用すると、セッション データvar_dump( $this->session->all_userdata() );が表示されません。'something'

どうしたの?このようにできますか?

4

1 に答える 1

2

Codeigniter は独自のセッションを管理し、いくつかの異なるストレージ メソッドを備えています (必ずしも php のネイティブ セッション ストレージをバックエンドとして使用するとは限りません)。

something次のようにして、codeigniter で変数にアクセスできるはずです。

session_start();
var_dump($_SESSION);

CI コアの変更について心配していない場合は、セッション ライブラリを変更して、$_SESSION からデータを取得できます。

よりクリーンなソリューションは、ネイティブ CI セッションをデフォルトの PHP $_SESSION スーパーグローバルとマージするフックを作成することです。

于 2012-06-09T01:06:56.190 に答える