以下を使用して、モデルの構成変数を更新しました。
$this->config->set_item('userid', $user_id);
モデルでエコーすると、設定されていることがわかります。
しかし、コントローラーまたは別のモデルでエコーする場合:
echo $this->config->item('userid');
元の値を示します。
セッション全体でこの構成変数を保存する必要がありますが、セッション変数を使用したくありません。
以下を使用して、モデルの構成変数を更新しました。
$this->config->set_item('userid', $user_id);
モデルでエコーすると、設定されていることがわかります。
しかし、コントローラーまたは別のモデルでエコーする場合:
echo $this->config->item('userid');
元の値を示します。
セッション全体でこの構成変数を保存する必要がありますが、セッション変数を使用したくありません。
その構成は、設定したモデルにのみ適用されます。セッションを使用せずにグローバル設定が必要な場合。
コアモデルを作成しapplication/core
て名前を付けることができます
MY_Model
したがって、基本的にMY_Model
は、それを拡張するすべてのモデルに構成を設定することです。
class MY_Model Extends CI_Model
{
protected $user_id;
public function __construct()
{
parent::__construct();
$this->config->set_item('userid', $this->user_id);
}
}
次に、設定を適用するモデルで、モデルを拡張するだけです。お気に入り
Model extends MY_Model
{
public function test($id)
{
$this->user_id = $id;
}
}
または、上記と同じコアコントローラーを作成できますが、コントローラーをモデルに置き換えて、Codeigniter 拡張コアクラスで詳細を参照してください。
構成を初期化してから$this->ci = & get_instance();
、次のような値を設定し
てみてください$this->ci->config->set_item('userid', $user_id);
私はこれをテストしていません...しかし、うまくいくと思います。